特許第6856902号(P6856902)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 日本通信株式会社の特許一覧 ▶ 株式会社クライムの特許一覧

<>
  • 特許6856902-認証又は決済を行うシステム 図000002
  • 特許6856902-認証又は決済を行うシステム 図000003
  • 特許6856902-認証又は決済を行うシステム 図000004
  • 特許6856902-認証又は決済を行うシステム 図000005
  • 特許6856902-認証又は決済を行うシステム 図000006
  • 特許6856902-認証又は決済を行うシステム 図000007
  • 特許6856902-認証又は決済を行うシステム 図000008
  • 特許6856902-認証又は決済を行うシステム 図000009
  • 特許6856902-認証又は決済を行うシステム 図000010
  • 特許6856902-認証又は決済を行うシステム 図000011
  • 特許6856902-認証又は決済を行うシステム 図000012
  • 特許6856902-認証又は決済を行うシステム 図000013
  • 特許6856902-認証又は決済を行うシステム 図000014
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6856902
(24)【登録日】2021年3月23日
(45)【発行日】2021年4月14日
(54)【発明の名称】認証又は決済を行うシステム
(51)【国際特許分類】
   G06Q 20/38 20120101AFI20210405BHJP
   G06F 21/60 20130101ALI20210405BHJP
   G06Q 20/40 20120101ALI20210405BHJP
【FI】
   G06Q20/38 310
   G06F21/60 360
   G06Q20/40
【請求項の数】12
【全頁数】24
(21)【出願番号】特願2019-74113(P2019-74113)
(22)【出願日】2019年4月9日
(65)【公開番号】特開2020-173534(P2020-173534A)
(43)【公開日】2020年10月22日
【審査請求日】2019年4月24日
(73)【特許権者】
【識別番号】500088667
【氏名又は名称】日本通信株式会社
(73)【特許権者】
【識別番号】513178908
【氏名又は名称】株式会社クライム
(74)【代理人】
【識別番号】110002860
【氏名又は名称】特許業務法人秀和特許事務所
(72)【発明者】
【氏名】福田 尚久
(72)【発明者】
【氏名】渋谷 靖
(72)【発明者】
【氏名】林 昌孝
(72)【発明者】
【氏名】中里 卓也
(72)【発明者】
【氏名】皆川 義孝
(72)【発明者】
【氏名】青木 良一
【審査官】 鈴木 和樹
(56)【参考文献】
【文献】 特許第6403910(JP,B1)
【文献】 特開2006−048390(JP,A)
【文献】 特開2019−021158(JP,A)
【文献】 特開2017−146828(JP,A)
【文献】 米国特許出願公開第2016/0260085(US,A1)
【文献】 特開2004−007350(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00 − 99/00
G06F 21/60
(57)【特許請求の範囲】
【請求項1】
第1端末の画面に表示されたコードを第2端末に読み取らせることにより認証又は決済を行うシステムであって、
前記第1端末において実行される第1端末プログラムと、
前記第2端末において実行される第2端末プログラムと、
認証又は決済を行うサーバと、を有し、
前記第1端末プログラムは、前記第1端末を、
認証又は決済に用いられる元データを、暗号鍵を用いて暗号化する変換手段、
前記元データの暗号文が埋め込まれたコードを生成するコード生成手段、
前記コードを前記第1端末の画面に表示させる表示制御手段、
として機能させるものであり、
前記第2端末プログラムは、前記第2端末を、
前記第1端末の画面に表示された前記コードを読み取る手段、
読み取った前記コードの情報を前記サーバに送信する手段、
として機能させるものであり、
前記サーバは、
前記第2端末から前記コードの情報を含む要求を受信する手段、
前記暗号鍵とペアになる復号鍵を用いて、前記コードに埋め込まれたデータを復号する手段、
前記復号鍵により前記元データの復号に成功した場合に、前記要求が前記第1端末のユーザからの正当な要求であると判断し、前記元データに基づく認証又は決済の処理を行う処理手段、
を有する
ことを特徴とするシステム。
【請求項2】
前記暗号鍵は、前記サーバの公開鍵であり、
前記復号鍵は、前記サーバの公開鍵とペアになる秘密鍵である
ことを特徴とする請求項1に記載のシステム。
【請求項3】
前記暗号鍵は、前記第1端末の秘密鍵であり、
前記復号鍵は、前記第1端末の秘密鍵とペアになる公開鍵である
ことを特徴とする請求項1に記載のシステム。
【請求項4】
第1端末の画面に表示されたコードを第2端末に読み取らせることにより認証又は決済を行うシステムであって、
前記第1端末において実行される第1端末プログラムと、
前記第2端末において実行される第2端末プログラムと、
認証又は決済を行うサーバと、を有し、
前記サーバは、
認証又は決済に用いられる元データが埋め込まれたコードを生成する手段、
前記コードのデータを、暗号鍵を用いて暗号化する手段、
前記コードのデータの暗号文を、前記第1端末に送信する手段、
を有し、
前記第1端末プログラムは、前記第1端末を、
前記サーバから、前記コードのデータの暗号文を受信する手段、
前記暗号鍵とペアになる復号鍵を用いて、前記コードのデータの暗号文を復号する変換手段、
前記コードを前記第1端末の画面に表示させる表示制御手段、
として機能させるものであり、
前記第2端末プログラムは、前記第2端末を、
前記第1端末の画面に表示された前記コードを読み取る手段、
読み取った前記コードの情報を前記サーバに送信する手段、
として機能させるものであり、
前記サーバは、
前記第2端末から前記コードの情報を含む要求を受信する手段、
前記コードに埋め込まれているデータが、前記第1端末に送信したコードに埋め込んだデータと整合する場合に、前記要求が前記第1端末のユーザからの正当な要求であると判断し、認証又は決済の処理を行う処理手段、
をさらに有する
ことを特徴とするシステム。
【請求項5】
第1端末の画面に表示されたコードを第2端末に読み取らせることにより認証又は決済を行うシステムであって、
前記第1端末において実行される第1端末プログラムと、
前記第2端末において実行される第2端末プログラムと、
認証又は決済を行うサーバと、を有し、
前記第1端末プログラムは、前記第1端末を、
認証又は決済に用いられる元データを、暗号鍵を用いて暗号化する手段、
前記元データの暗号文を前記サーバに送信する手段、
として機能させ、
前記サーバは、
前記第1端末から受信した前記元データの暗号文を用いて、前記元データが埋め込まれたコードを生成する手段、
前記コードのデータを、第2の暗号鍵を用いて暗号化する手段、
前記コードのデータの暗号文を、前記第1端末に送信する手段、
を有し、
前記第1端末プログラムは、前記第1端末を、
前記サーバから、前記コードのデータの暗号文を受信する手段、
前記第2の暗号鍵とペアになる第2の復号鍵を用いて、前記コードのデータの暗号文を復号する変換手段、
前記コードを前記第1端末の画面に表示させる表示制御手段、
としてさらに機能させるものであり、
前記第2端末プログラムは、前記第2端末を、
前記第1端末の画面に表示された前記コードを読み取る手段、
読み取った前記コードの情報を前記サーバに送信する手段、
として機能させるものであり、
前記サーバは、
前記第2端末から前記コードの情報を含む要求を受信する手段、
前記暗号鍵とペアになる復号鍵を用いて、前記コードに埋め込まれたデータを復号する手段、
前記復号鍵により前記元データの復号に成功した場合に、前記要求が前記第1端末のユーザからの正当な要求であると判断し、前記元データに基づく認証又は決済の処理を行う処理手段、
を有する
ことを特徴とするシステム。
【請求項6】
前記暗号鍵は、前記サーバの秘密鍵であり、
前記復号鍵は、前記サーバの秘密鍵とペアになる公開鍵である
ことを特徴とする請求項4又は5に記載のシステム。
【請求項7】
前記暗号鍵は、前記第1端末の公開鍵であり、
前記復号鍵は、前記第1端末の公開鍵とペアになる秘密鍵である
ことを特徴とする請求項4又は5に記載のシステム。
【請求項8】
前記第1端末プログラムは、前記第1端末に内蔵又は接続されたセキュアエレメントによって実行されるプログラムを含み、
少なくとも前記変換手段は、前記セキュアエレメントによって実行されるプログラムによって提供される
ことを特徴とする請求項1〜7のいずれか1項に記載のシステム。
【請求項9】
前記第1端末プログラムは、前記第1端末に内蔵又は接続されたSIMカードによって実行されるプログラムを含み、
少なくとも前記変換手段は、前記SIMカードによって実行されるプログラムによって提供される
ことを特徴とする請求項1〜7のいずれか1項に記載のシステム。
【請求項10】
前記第1端末プログラムは、前記第1端末に内蔵又は接続されたSIMカードに重ねて貼り付けられたICカードによって実行されるプログラムを含み、
少なくとも前記変換手段は、前記ICカードによって実行されるプログラムによって提供される
ことを特徴とする請求項1〜7のいずれか1項に記載のシステム。
【請求項11】
前記コードは、時間情報が埋め込まれており、
前記サーバの前記処理手段は、前記コードに埋め込まれている時間情報が所定の条件を満たす場合、又は満たさなかった場合に、前記コードを無効とする
ことを特徴とする請求項1〜10のいずれか1項に記載のシステム。
【請求項12】
前記コードは、位置情報が埋め込まれており、
前記サーバの前記処理手段は、前記コードに埋め込まれている位置情報が所定の条件を満たす場合、又は満たさなかった場合に、前記コードを無効とする
ことを特徴とする請求項1〜11のいずれか1項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、QRコード等を用いて認証又は決済を行う技術に関する。
【背景技術】
【0002】
バーコード等の一次元コードやQRコード(登録商標)等の二次元コードをオンライン認証又はオンライン決済に利用する仕組みが知られている。例えば特許文献1には、サービスプロバイダに初期登録を行う際に、コンピュータの画面に当該コンピュータの公開鍵を埋め込んだQRコードを表示し、携帯端末でQRコードを読み取ることでコンピュータの公開鍵を入手し、携帯端末から、ユーザ情報、コンピュータの公開鍵、携帯端末の公開鍵、携帯端末の端末情報などを含むデータを認証サーバに送信する、という方法が記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2018−82244号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ここ数年、政府によるキャッシュレス化推進が追い風となり、QRコード決済サービスが数多く登場し、利用者数が急増している。QRコード決済の方法には、大きく分けて、(1)ユーザスキャン方式と(2)ストアスキャン方式の2種類がある。(1)は、店舗に掲示されているQRコードをユーザのスマートフォン(カメラ)で読み取る方式であり、(2)は、ユーザがスマートフォンの画面にQRコードを表示し、店舗側がリーダーでQRコードを読み取る方法である。
【0005】
ストアスキャン方式のQRコード決済の流れは概略次のようになる。まずユーザが、所持するクライアント端末(スマートフォン、タブレット等)でQRコード決済アプリを起動すると、元データの生成が行われる。元データは、決済に必要な情報であり、例えば、ユーザを特定するための情報(決済サーバのログインID、口座情報、クレジットカード情報等)、取引内容を特定するための情報等が含まれる。そして、QRコード決済アプリが、QRコード生成要求とともに元データを決済サーバに送信すると、決済サーバが、元データに対して取引の正当性に関する情報の付与や、誤り訂正のためのRS符号等の演算などを行った後、QRコードデータをクライアント端末のQRコード決済アプリへ送り返す。QRコードデータは、QRコードに埋め込むためのデータ(テキストデータ)の場合もあれば、QRコードのデータの場合もある。QRコード決済アプリは、QRコードデータに基づいて、クライアント端末の画面にQRコード画像を表示する。そして、店舗端末(POSレジあるいは店員が所持するスマートフォン等)でQRコード画像を読み取り、必要な情報(支払金額、店舗情報等)とともにQRコードデータを決済サーバに送信する。決済サーバでは、店舗端末から受信したQRコードデータに基づきユーザの認証を行い、認証に成功した場合に当該ユーザの口座あるいはクレジットカードから決済処理を行う。
【0006】
このようなストアスキャン方式のQRコード決済においては、クライアント端末と決済サーバとの間で交換されるデータ(元データ及びQRコードデータ)の中や、店舗端末と決済サーバとの間で交換されるデータ(QRコードデータ)の中に、決済サーバのログインIDや口座情報といったクリティカルな情報が含まれているため、ネットワークの傍受やリバースエンジニアリング等によってデータが漏えいした場合に、口座の不正利用によ
る被害が発生する危険性がある。サイバーセキュリティのリスクは日増しに増大しているため、安心・安全にオンライン決済サービスを利用するためのセキュリティ対策が求められている。なおここまで、QRコードを例に挙げて従来技術の問題を説明したが、QRコード以外の二次元コードや、バーコード等の一次元コードを用いた決済ないし認証においても同様の問題が生じ得る。本明細書では、一次元コードと二次元コードを包含する概念として「コード」という用語を用いる。
【0007】
本発明は上記問題点に鑑みなされたものであって、コードを用いた決済又は認証のセキュリティを高めるための技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の第一側面は、
第1端末の画面に表示されたコードを第2端末に読み取らせることにより認証又は決済を行うシステムであって、
前記第1端末において実行される第1端末プログラムと、
前記第2端末において実行される第2端末プログラムと、
認証又は決済を行うサーバと、を有し、
前記第1端末プログラムは、前記第1端末を、
認証又は決済に用いられる元データを、暗号鍵を用いて暗号化する変換手段、
前記元データの暗号文が埋め込まれたコードを生成するコード生成手段、
前記コードを前記第1端末の画面に表示させる表示制御手段、
として機能させるものであり、
前記第2端末プログラムは、前記第2端末を、
前記第1端末の画面に表示された前記コードを読み取る手段、
読み取った前記コードの情報を前記サーバに送信する手段、
として機能させるものであり、
前記サーバは、
前記第2端末から前記コードの情報を含む要求を受信する手段、
前記暗号鍵とペアになる復号鍵を用いて、前記コードに埋め込まれたデータを復号する手段、
前記復号鍵により前記元データの復号に成功した場合に、前記要求が前記第1端末のユーザからの正当な要求であると判断し、前記元データに基づく認証又は決済の処理を行う処理手段、を有することを特徴とするシステムを提供する。
【0009】
上記構成によれば、コードに埋め込まれているデータが暗号化されているため、万一、コードそのものやコードから読み取られた情報が漏えいしたとしても、認証又は決済に用いられる元データの内容が知得されるリスクが極めて小さい。
【0010】
ここで、前記暗号鍵は、前記サーバの公開鍵であり、前記復号鍵は、前記サーバの公開鍵とペアになる秘密鍵であることが好ましい。これにより、コードに埋め込まれた情報を理解できるのはサーバに限られるため、認証又は決済に用いられる元データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。
【0011】
あるいは、前記暗号鍵は、前記第1端末の秘密鍵であり、前記復号鍵は、前記第1端末の秘密鍵とペアになる公開鍵であってもよい。登録時に公開鍵をサーバに紐付け、これにより、コードに埋め込まれた情報を理解できるのは、第1端末の公開鍵を保有している者(ここではサーバ)に限られるため、認証又は決済に用いられる元データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。また、コードに埋め込まれた情報を第1端末の公開鍵で復号できるということは、そのコードの発行が第1端末によって行われた証明ともなるので、例えばコードの改ざんや不正発行などを防止することも可能となる。
【0012】
本発明の第二側面は、
第1端末の画面に表示されたコードを第2端末に読み取らせることにより認証又は決済を行うシステムであって、
前記第1端末において実行される第1端末プログラムと、
前記第2端末において実行される第2端末プログラムと、
認証又は決済を行うサーバと、を有し、
前記サーバは、
認証又は決済に用いられる元データが埋め込まれたコードを生成する手段、
前記コードのデータを、暗号鍵を用いて暗号化する手段、
前記コードのデータの暗号文を、前記第1端末に送信する手段、
を有し、
前記第1端末プログラムは、前記第1端末を、
前記サーバから、前記コードのデータの暗号文を受信する手段、
前記暗号鍵とペアになる復号鍵を用いて、前記コードのデータの暗号文を復号する変換手段、
前記コードを前記第1端末の画面に表示させる表示制御手段、
として機能させるものであり、
前記第2端末プログラムは、前記第2端末を、
前記第1端末の画面に表示された前記コードを読み取る手段、
読み取った前記コードの情報を前記サーバに送信する手段、
として機能させるものであり、
前記サーバは、
前記第2端末から前記コードの情報を含む要求を受信する手段、
前記コードに埋め込まれているデータが、前記第1端末に送信したコードに埋め込んだデータと整合する場合に、前記要求が前記第1端末のユーザからの正当な要求であると判断し、認証又は決済の処理を行う処理手段、
をさらに有することを特徴とするシステムを提供する。
【0013】
上記構成によれば、サーバから第1端末に送信されるデータが暗号化されているため、万一、サーバから送信されるデータが漏えいしたとしても、そのデータからコードが生成されたり、ましてや認証又は決済に用いられる元データが知得されたりするリスクが極めて小さい。なお、サーバから第1端末に送信される「コードのデータ」は、表示用の画像データでもよいし、コードの中身のデータ(コードに埋め込まれるデータ)でもよいし、画像を生成するためのデータなどでもよい。
【0014】
本発明の第三側面は、
第1端末の画面に表示されたコードを第2端末に読み取らせることにより認証又は決済を行うシステムであって、
前記第1端末において実行される第1端末プログラムと、
前記第2端末において実行される第2端末プログラムと、
認証又は決済を行うサーバと、を有し、
前記第1端末プログラムは、前記第1端末を、
認証又は決済に用いられる元データを、暗号鍵を用いて暗号化する手段、
前記元データの暗号文を前記サーバに送信する手段、
として機能させ、
前記サーバは、
前記第1端末から受信した前記元データの暗号文を用いて、前記元データが埋め込まれたコードを生成する手段、
前記コードのデータを、第2の暗号鍵を用いて暗号化する手段、
前記コードのデータの暗号文を、前記第1端末に送信する手段、
を有し、
前記第1端末プログラムは、前記第1端末を、
前記サーバから、前記コードのデータの暗号文を受信する手段、
前記第2の暗号鍵とペアになる第2の復号鍵を用いて、前記コードのデータの暗号文を復号する変換手段、
前記コードを前記第1端末の画面に表示させる表示制御手段、
としてさらに機能させるものであり、
前記第2端末プログラムは、前記第2端末を、
前記第1端末の画面に表示された前記コードを読み取る手段、
読み取った前記コードの情報を前記サーバに送信する手段、
として機能させるものであり、
前記サーバは、
前記第2端末から前記コードの情報を含む要求を受信する手段、
前記暗号鍵とペアになる復号鍵を用いて、前記コードに埋め込まれたデータを復号する手段、
前記復号鍵により前記元データの復号に成功した場合に、前記要求が前記第1端末のユーザからの正当な要求であると判断し、前記元データに基づく認証又は決済の処理を行う処理手段、
を有することを特徴とするシステムを提供する。この構成によれば、元データ自体も暗号化されるため、元データを第1端末側で生成し決済サーバへ受け渡すケースにおいても、高いセキュリティを確保できる。
【0015】
ここで、前記暗号鍵は、前記サーバの秘密鍵であり、前記復号鍵は、前記サーバの秘密鍵とペアになる公開鍵であるとよい。これにより、サーバから配信されたコードを復号できるのは、サーバの公開鍵を保有している者(例えば第1端末)に限られるため、認証又は決済に用いられる元データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。
【0016】
あるいは、前記暗号鍵は、前記第1端末の公開鍵であり、前記復号鍵は、前記第1端末の公開鍵とペアになる秘密鍵であることも好ましい。これにより、サーバから送信される暗号文を復号できるのは第1端末に限られるため、コードや認証又は決済に用いられる元
データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。
【0017】
前記第1端末プログラムは、前記第1端末に内蔵又は接続されたセキュアエレメントによって実行されるプログラムを含み、少なくとも前記変換手段は、前記セキュアエレメントによって実行されるプログラムによって提供されてもよい。また、前記第1端末プログラムは、前記第1端末に内蔵又は接続されたSIMカードによって実行されるプログラムを含み、少なくとも前記変換手段は、前記SIMカードによって実行されるプログラムによって提供されてもよい。あるいは、前記第1端末プログラムは、前記第1端末に内蔵又は接続されたSIMカードに重ねて貼り付けられたICカードによって実行されるプログラムを含み、少なくとも前記変換手段は、前記ICカードによって実行されるプログラムによって提供されてもよい。これらの構成によれば、変換手段による暗号化/復号の機能が第1端末の本体プロセッサとは独立して動作する、セキュアなプロセッサにより提供されるため、セキュリティを一層高めることができる。
【0018】
前記コードは、時間情報が埋め込まれており、前記サーバの前記処理手段は、前記コードに埋め込まれている時間情報が所定の条件を満たす場合、又は満たさなかった場合に、前記コードを無効としてもよい。この構成によれば、コードによる認証又は決済に時期的制限を設定することができるので、予め設定した日時や時間帯のみ使用可能なクーポンやチケットとして利用するなど、ユニークかつ利便性の高い使い方が可能となる。
【0019】
前記コードは、位置情報が埋め込まれており、前記サーバの前記処理手段は、前記コードに埋め込まれている位置情報が所定の条件を満たす場合、又は満たさなかった場合に、前記コードを無効としてもよい。この構成によれば、コードによる認証又は決済に位置的制限を設定することができるので、セキュリティを一層高めることができる。また、予め設定した場所内でのみ使用可能なクーポンやチケットとして利用するなど、ユニークかつ利便性の高い使い方も可能となる。
【0020】
本発明は、上述した手段ないし機能の少なくとも一部を含む決済システム、認証システム等と捉えることができる。また、本発明は、そのような決済システム、認証システムを構成するサーバ、端末等と捉えることもできる。また、本発明は、上述した処理ないし肯定の少なくとも一部を含む決済方法、認証方法や、それらの方法をコンピュータに実行させるためのプログラムや、当該プログラムを非一時的に記憶したコンピュータ読取可能な記憶媒体として捉えることもできる。
【発明の効果】
【0021】
本発明によれば、コードを用いた決済又は認証のセキュリティを高めることができる。
【図面の簡単な説明】
【0022】
図1図1は、本発明の実施形態に係るQRコード決済システムの全体構成を示す図である。
図2図2は、ユーザ端末の構成を示すブロック図である。
図3図3は、第1実施形態に係るQRコード決済システムの機能構成の一例を示す図である。
図4図4は、第1実施形態におけるQRコード決済のフローを示す図である。
図5図5は、第2実施形態に係るQRコード決済システムの機能構成の一例を示す図である。
図6図6は、第2実施形態におけるQRコード決済のフローを示す図である。
図7図7は、第3実施形態に係るQRコード決済システムの機能構成の一例を示す図である。
図8図8は、第3実施形態におけるQRコード決済のフローを示す図である。
図9図9は、第6実施形態におけるセキュアエレメントの構成を示す図である。
図10図10は、第7実施形態におけるSIMカードの構成を示す図である。
図11図11は、第7実施形態におけるユーザ端末及びSIMカードの外観を示す図である。
図12図12は、第8実施形態におけるサブSIMの構成を示す図である。
図13図13は、第8実施形態におけるユーザ端末及びサブSIMの外観を示す図である。
【発明を実施するための形態】
【0023】
<QRコード決済の概要>
図1は、本発明の実施形態に係るQRコード決済システムの全体構成を示している。QRコード決済システム1は、概略、ユーザが利用する端末(以下、「ユーザ端末」と呼ぶ)10に実装されるユーザ・プログラム100と、店舗などのサービス提供者が利用する端末(以下、「ストア端末」と呼ぶ)11に実装されるストア・プログラム110と、決済処理や認証処理などを行う決済サーバ12とから構成されている。なお、ユーザ端末10が「第1端末」の例であり、ユーザ・プログラム100が「第1端末プログラム」の例、ストア端末11が「第2端末」の例、ストア・プログラム110が「第2端末プログラム」の例である。
【0024】
本実施形態のQRコード決済システム1は、いわゆるストアスキャン方式のQRコード決済を行うためのシステムである。例えば、コンビニエンスストア(サービス提供者の例)で物品の購入代金をQRコード決済する場合の手順は、概略、以下のような流れとなる。
【0025】
(1)ユーザ端末10の画面にQRコード101の画像を表示する。
(2)ストア端末11であるPOSレジのコードリーダ111で、ユーザ端末10の画面のQRコード101を読み取って、QRコード101に埋め込まれた情報(ユーザを特定する情報など)を取得する。
(3)ストア端末11が、QRコード101に埋め込まれた情報(ユーザを特定する情報など)や取引情報(物品の購入代金など)と共に決済要求を決済サーバ12に送信する。
(4)決済サーバ12が、ストア端末11から受信した情報に基づき、ユーザの認証や決済の処理を実行する。
(5)決済サーバ12が、認証又は決済の成否をユーザ端末10及びストア端末11に通知する。
以上の処理により、スマートフォンなどを利用したキャッシュレス決済を実現することができる。
【0026】
<第1実施形態>
(ユーザ端末)
図2は、ユーザ端末10の構成を示すブロック図である。本実施形態では、ユーザ端末10の一例としてスマートフォンを例示するが、これはあくまで一つの適用例にすぎない。ユーザ端末10としては、ユーザ・プログラム100を実行するためのプロセッサとメモリを有し、一次元コードや二次元コードを表示可能なディスプレイを有し、かつ、インターネットとの接続が可能な携帯型の電子機器であればいかなるデバイスを用いてもよい。スマートフォンの他、例えば、タブレット端末、モバイルPC、ウェアラブルPC、スマートウォッチ、スマートグラス、スマートウォレット、携帯ゲーム機などを例示できる。
【0027】
ユーザ端末10は、主なハードウェア資源として、CPU(プロセッサ)20、メモリ
21、ストレージ22、タッチパネルディスプレイ23、通信モジュール24、電源25、SIMカード26、GPSセンサ27を有する。メモリ21はRAMであり、CPU20がワーキングメモリとして使用する記憶領域を提供する。ストレージ22はプログラムや各種のデータを格納するための不揮発性の記憶媒体であり、例えば、内蔵のEEPROM、カードスロットに装着されるフラッシュメモリなどが該当する。タッチパネルディスプレイ23は、表示装置と入力装置を兼ねたデバイスである。通信モジュール24は、ユーザ端末10によるデータ通信や音声通信を担うデバイスである。本実施形態の通信モジュール24は、3G、4G/LTE、5Gなどの携帯電話網を利用した通信、Wi−Fiによる通信、近距離無線通信などに対応しているものとする。電源25は、ユーザ端末10に対し電力を供給するものであり、リチウムイオンバッテリと電源回路から構成される。SIMカード26は、携帯電話網を利用した通信の加入者情報が記録された接触型のICカードである。GPSセンサ27は、GPS信号を利用してユーザ端末10が存在する位置の情報(緯度経度情報)を取得するセンサである。
【0028】
図3に、ユーザ端末10の機能構成の一例を示す。ユーザ端末10は、主な機能として、元データ生成部300、変換部301、コード画像生成部302、表示制御部303、ユーザ情報記憶部304、鍵記憶部305を有する。これらの機能は、例えば、ストレージ22に格納されているユーザ・プログラム100をメモリ21に展開し、当該プログラム100をCPU20が実行することにより実現される。ユーザ・プログラム100は、QRコード決済サービスの運営者等により配布されるプログラムであり、ユーザはQRコード決済サービスの利用に先立ちインターネット上のアプリケーションディストリビュータを通じてユーザ・プログラム100をダウンロードしユーザ端末10にインストールする。
【0029】
ユーザ情報記憶部304は、ユーザに関する情報、ユーザ端末10に関する情報などを記憶している。ユーザに関する情報としては、例えば、ユーザの本人情報(名前、メールアドレスなど)、QRコード決済サービスの利用に関わる情報(ユーザID、パスワード、口座情報など)などが挙げられる。またユーザ端末10に関する情報としては、例えば、端末を特定する情報などが挙げられる。
【0030】
鍵記憶部305は、公開鍵暗号方式で用いる鍵ペア(秘密鍵と公開鍵)及び電子証明書を記憶している。この鍵ペアは、当該ユーザ又はユーザ端末10に対し発行されたものであり、電子証明書は公開鍵とその所有者であるユーザ又はユーザ端末10を証明するものである。
【0031】
元データ生成部300は、QRコード決済に必要な情報(「元データ」と呼ぶ)を生成する機能である。元データには、少なくとも、ユーザがQRコード決済サービスを利用するために必須の情報、言い換えると、QRコード決済サービスの利用要求をしている者が誰なのか(登録ユーザか否か)を決済サーバ12が判定するために必須の情報、が含まれる。例えば、QRコード決済サービスのパスワードが該当する。あるいは、決済に利用する銀行口座の情報、クレジットカードの情報などが元データに含まれてもよい。また、必要に応じて、取引内容を特定するための情報(例えば、金額、ストアのIDなど)が元データに含まれてもよい。
【0032】
変換部301は、公開鍵暗号方式による暗号化処理、復号処理、電子署名処理などを行う機能である。暗号化処理とは、与えられたデータに対し秘密鍵又は公開鍵を用いた暗号化を行い、当該データの暗号文を出力する機能である。暗号化に用いる鍵を暗号鍵とも呼ぶ。復号処理とは、暗号文を復号し、平文のデータを出力する機能である。復号に用いる鍵を復号鍵とも呼ぶ。秘密鍵を暗号鍵に用いた場合は公開鍵が復号鍵となり、公開鍵を暗号鍵に用いた場合は秘密鍵が復号鍵となる。暗号アルゴリズムはRSA、DSA、ECD
SAなどが好ましいが、それら以外のアルゴリズムを利用してもよい。また、公開鍵暗号方式ではなく、共通鍵暗号方式を用いてもよい。
【0033】
電子署名処理とは、与えられたデータに対し秘密鍵を用いた電子署名を行う機能である。通常は与えられたデータをハッシュ関数で変換したハッシュ値を暗号化する。ハッシュ関数は何を用いてもよく、例えば、SHA−1やSHA−256を用いることができる。なお、電子署名の対象となるデータのサイズが小さい場合には、ハッシュ値ではなく、データそのものを暗号化したものを電子署名として用いてもよい。データと電子署名を受信した者はデータを復号し、必要ならばハッシュ値を算出する。得られたデータあるいはハッシュ値を受け取った電子署名と照合し、一致していれば作成者の保証された改ざんされていないデータであると判断する。
【0034】
コード画像生成部302は、QRコードを生成する機能である。コード画像生成部32は、QRコードに埋め込むための情報を受け取ると、その情報を符号化し、QRコードの画像データを生成する。QRコードの生成方法は公知であるため詳しい説明は割愛する。
【0035】
表示制御部303は、QRコードの画像及びその他必要な情報をユーザ端末10の画面に表示する制御を行う機能である。
【0036】
(ストア端末)
図3に示すように、ストア端末11は、主な機能として、コードリーダ310、コード解析部311、取引情報取得部312、決済要求部313を有している。
【0037】
コードリーダ310は、QRコードを読み取る機能である。専用機器を用いてもよいし、ストア端末11が備えるカメラを利用してもよい。コード解析部311は、コードリーダ310で読み取ったQRコードをデコードし、QRコードに埋め込まれている情報を抽出する機能である。取引情報取得部312は、ユーザとストアの間の取引に関する情報を取得する機能である。例えば、物品の購入代金の決済の場合であれば、取引情報取得部312は、POSシステムから購入代金の情報を取得してもよい。決済要求部313は、QRコードから抽出した情報と取引情報を含む決済要求を決済サーバ12に送る機能である。
【0038】
ストア端末11としては、ストア・プログラム110を実行するためのプロセッサとメモリを有し、かつ、インターネットとの接続が可能な電子機器であればいかなるデバイスを用いてもよい。例えば、パーソナルコンピュータ、POSシステムなどをストア端末11として用いてもよいし、スマートフォン、タブレット端末、モバイルPC、ウェアラブルPC、スマートウォッチ、スマートグラス、スマートウォレット、携帯ゲーム機などをストア端末11として用いてもよい。図3に示す機能は、プロセッサがストア・プログラム110を実行することにより実現される。
【0039】
(決済サーバ)
図3に示すように、決済サーバ12は、主な機能として、認証処理部320、決済処理部321、登録データベース322を有している。
【0040】
認証処理部320は、決済サーバ12の利用者の認証(登録ユーザか否かの検証)を行う機能である。決済処理部321は、ストア端末11から受信した決済要求に基づき、決済処理を実行する機能である。登録データベース322は、登録ユーザに関わる情報を記憶するデータベースである。登録ユーザに関わる情報としては、例えば、ユーザの本人情報、ユーザID、パスワード、口座情報(又はクレジットカード情報)、公開鍵(又は電子証明書)などを含むとよい。
【0041】
これらの機能は、決済サーバ12のプロセッサがプログラムを実行することにより実現されるものである。なお、決済サーバ12は1台のコンピュータで構成してもよいし、クラウドコンピューティングや分散コンピューティングで構成してもよい。
【0042】
(QRコード決済のフロー)
図4を参照して、第1実施形態におけるQRコード決済のフローを説明する。第1実施形態のフローの特徴は、元データの生成及びQRコードの生成をともにユーザ端末10で行う点にある。
【0043】
まず、ユーザがユーザ端末10のユーザ・プログラム100において「QRコード表示」を指示する(ステップS400)。すると、元データ生成部300が、ユーザ情報記憶部304からQRコード決済に必要な情報を読み出し、元データを生成する(ステップS401)。続いて、変換部301が、ユーザの秘密鍵を用いて元データを暗号化し(ステップS402)、コード画像生成部302が、元データの暗号文とユーザIDの平文を埋め込んだQRコードの画像データを生成する(ステップS403)。そして、表示制御部303によってユーザ端末10のタッチパネルディスプレイの画面上にQRコードの画像が表示される(ステップS404)。
【0044】
ユーザが画面に表示されたQRコードをストアのスタッフに見せると、スタッフがストア端末11のコードリーダ310を用いてQRコードを読み取る(ステップS410)。続いて、コード解析部311が、QRコードをデコードして元データの暗号文及びユーザIDの平文を抽出する(ステップS411)。そして、取引情報取得部312が、取引情報を取得し(ステップS412)、決済要求部313が、「元データの暗号文」、「ユーザIDの平文」、及び「取引情報」を付した決済要求を決済サーバ12に送信する(ステップS413)。
【0045】
決済サーバ12が、ストア端末11から決済要求を受信すると(ステップS420)、認証処理部320が、決済要求に含まれる「ユーザIDの平文」に基づき、登録データベース322から当該ユーザIDに紐づけられた公開鍵を読み出し、当該公開鍵を用いて、決済要求に含まれる「元データの暗号文」を復号する(ステップS421)。復号に成功した場合は(ステップS422のYES)、認証OK、すなわち、この決済要求がユーザIDで特定される登録ユーザからの正当な要求であるとみなすことができる。一方、復号に失敗した場合は(ステップS422のNO)、認証NG、すなわち、この決済要求がなりすましや改ざん等の不正利用によるものであると判断し、この決済要求を拒否(無効化)する(ステップS423)。認証OKの場合は、決済処理部321が、復号された元データと取引情報に基づき決済処理を行い(ステップS424)、決済完了通知をストア端末11及びユーザ端末10にそれぞれ送信する(ステップS425)。
【0046】
以上述べた本実施形態の構成によれば、QRコードに埋め込まれている元データが暗号化されているため、万一、QRコードの画像そのものやQRコードから読み取られた情報が漏えいしたとしても、認証又は決済に用いられる元データの内容が知得されるリスクが極めて小さい。
【0047】
また、元データの暗号化をユーザの秘密鍵を用いて行うので、QRコードに埋め込まれた情報を理解できるのは、ユーザの公開鍵を保有している者(ここでは決済サーバ12)に限られる。したがって、認証又は決済に用いられる元データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。また、QRコードに埋め込まれた情報をユーザの公開鍵で復号できるということは、そのQRコードの発行がユーザ端末10によって行われた証明ともなるので、例えばQRコードの改ざんや不正発行などを防止す
ることが可能である。
【0048】
(第1実施形態の変形例)
第1実施形態では、ユーザ端末10が自身の秘密鍵を用いて元データを暗号化し(図4のステップS402)、決済サーバ12がユーザの公開鍵を用いて元データの復号を行った(ステップS421)が、鍵ペアとして決済サーバ12の秘密鍵・公開鍵を用いることも好ましい。具体的には、ユーザ端末10の鍵記憶部305に決済サーバ12の公開鍵を格納しておき、変換部301が元データを暗号化する際に決済サーバ12の公開鍵を用いる。そして、決済サーバ12が、決済要求に含まれる元データの暗号文を復号する際に自身の秘密鍵を用いるのである。この方法によれば、QRコードに埋め込まれた暗号文を理解できるのは、秘密鍵を保有している決済サーバ12に限られるため、認証又は決済に用いられる元データの内容が漏えい・知得されるリスクをゼロないし最小限に抑えることができる。
【0049】
<第2実施形態>
図5は、第2実施形態に係るQRコード決済システムの機能構成を示している。第2実施形態の特徴は、元データの生成及びQRコードの生成・配信を決済サーバ12が行う点にある。この構成は、例えば、決済サーバ12が、ユーザに対しクーポンやチケットの配信を行うケースに好ましく適用できる。以下では、本実施形態に特有の構成を中心に説明し、第1実施形態と実質的に同じ構成については説明を割愛する。
【0050】
本実施形態のユーザ端末10は、受信部500及び変換部501を有している。受信部500は、決済サーバ12から、暗号化されたQRコードを受信する機能である。変換部501は、復号鍵を用いてQRコードを復号する機能である。また、本実施形態の決済サーバ12は、元データ生成部520、コードデータ生成部521、暗号化部522、コード配信部523を有している。元データ生成部520は、QRコードに埋め込む情報を生成する機能である。例えば、クーポン配信の場合であれば、元データとして、クーポンの配信先であるユーザの情報、クーポンの内容、クーポンを利用可能なストアの情報などが含まれる。コードデータ生成部521は、元データを符号化し、QRコードのデータを生成する機能である。暗号化部522は、コードデータ生成部521が生成したデータを暗号化する機能である。暗号鍵としては、クーポンの配信先となるユーザの公開鍵、又は、決済サーバ12の秘密鍵を用いるとよい。コード配信部523は、QRコードのデータ(暗号文)をユーザ端末10に送信する機能である。なお、クーポンに関する情報、配信先となるユーザに関する情報、暗号鍵などは、決済サーバ12の登録データベース322に予め格納されているものとする。
【0051】
図6を参照して、第2実施形態におけるQRコード決済のフローを説明する。ここでは、決済サーバ12から所定のタイミング(1日1回など)で登録ユーザにクーポンが配信される例を挙げて、フローの説明を行う。
【0052】
所定のタイミングになると、決済サーバ12の元データ生成部520が、登録データベース322からクーポン生成に必要な情報を読み出し、元データを生成する(ステップS620)。次に、コードデータ生成部521が、元データを埋め込んだQRコードのデータを生成する(ステップS621)。次に、暗号化部522が、登録データベース322に登録されている暗号鍵を用いて、QRコードのデータを暗号化する(ステップS622)。そして、コード配信部523が、暗号化したQRコードのデータをユーザ端末10に配信する(ステップS623)。
【0053】
ユーザ端末10では、受信部500が、決済サーバ12から配信されたQRコードのデータを受信する(ステップS600)と、変換部501が、QRコードのデータの復号を
行う(ステップS601)。QRコードのデータを暗号化するときの暗号鍵としてユーザの公開鍵が用いられた場合には、復号鍵としてユーザの秘密鍵を用いる。他方、暗号鍵として決済サーバ12の秘密鍵が用いられた場合には、復号鍵として決済サーバ12の公開鍵を用いるとよい。ユーザごとに個別にクーポンを配信する用途であれば、前者の方法が好ましい。クーポンの正しい配信先であるユーザしか復号できないため、クーポンが他人に不正利用されるリスクを最小限にできるからである。一方、複数のユーザにクーポンを同時配信する用途であれば、後者の方法が好ましい。決済サーバ12の公開鍵を保有している者であれば誰でもクーポンを復号できるからである。以上により、QRコードのデータを取得した後、コード画像生成部302によってQRコードの画像が生成され、表示制御部303によってユーザ端末10のタッチパネルディスプレイの画面上にQRコードの画像が表示される(ステップS602)。
【0054】
ユーザが画面に表示されたQRコードをストアのスタッフに見せると、スタッフがストア端末11のコードリーダ310を用いてQRコードを読み取る(ステップS610)。続いて、コード解析部311が、QRコードをデコードして元データ(クーポン情報)を抽出する(ステップS611)。そして、決済要求部313が、元データを付した決済要求を決済サーバ12に送信する(ステップS612)。
【0055】
決済サーバ12が、ストア端末11から決済要求を受信すると(ステップS624)、認証処理部320が、決済要求に含まれる元データを確認し、決済サーバ12が配信したクーポンに相違ないかを検証する(ステップS625)。正当なクーポンであることが確認できた場合、認証処理部320は、その旨の通知をストア端末11及びユーザ端末10にそれぞれ送信する(ステップS626)。
【0056】
以上述べた本実施形態の構成によれば、決済サーバ12からユーザ端末10に送信されるデータが暗号化されているため、万一、決済サーバ12から送信されるデータが漏えいしたとしても、認証又は決済に用いられる元データの内容が知得されるリスクが極めて小さい。
【0057】
<第3実施形態>
図7は、第3実施形態に係るQRコード決済システムの機能構成を示している。第3実施形態の特徴は、元データの生成はユーザ端末10が行い、QRコードの生成・配信を決済サーバ12が行う点にある。以下では、本実施形態に特有の構成を中心に説明し、前述の実施形態と実質的に同じ構成については説明を割愛する。
【0058】
本実施形態のユーザ端末10は、元データ生成部700及び変換部701を有している。元データ生成部700は、QRコード決済に必要な情報(元データ)を生成する機能である。元データには、例えば、ユーザIDなどのユーザに関する情報が含まれる。変換部701は、元データ生成部700で生成された元データを暗号鍵を用いて暗号化する機能、及び、受信部500で受信されるQRコードを復号鍵を用いて復号する機能を有する。
【0059】
図8を参照して、第3実施形態におけるQRコード決済のフローを説明する。
まず、ユーザがユーザ端末10において「QRコード表示」を指示する(ステップS800)。すると、元データ生成部700が、ユーザ情報記憶部304からQRコード決済に必要な情報を読み出し、元データを生成する(ステップS801)。続いて、変換部701が、元データを暗号化する(ステップS802)。暗号化された元データは、元データ生成部700により決済サーバ12に送られる(ステップS803)。
【0060】
決済サーバ12がユーザ端末10から元データを受信すると、コードデータ生成部521が、元データを埋め込んだQRコードのデータを生成する(ステップS821)。この
とき、コードデータ生成部521は、QRコードの発行管理を行うために、管理情報(ランダムなキーもしくはシリアルキーなど)をQRコードのデータに埋め込むとよい。次に、暗号化部522が、QRコードのデータを暗号化する(ステップS822)。そして、コード配信部523が、暗号化したQRコードのデータをユーザ端末10に配信する(ステップS823)。
【0061】
ユーザ端末10では、受信部500が、決済サーバ12から配信されたQRコードのデータを受信する(ステップS804)と、変換部701が、QRコードのデータの復号を行う(ステップS805)。QRコードのデータを暗号化するときの暗号鍵としてユーザの公開鍵が用いられた場合には、復号鍵としてユーザの秘密鍵を用いる。他方、暗号鍵として決済サーバ12の秘密鍵が用いられた場合には、復号鍵として決済サーバ12の公開鍵を用いるとよい。以上により、QRコードのデータを取得した後、コード画像生成部302によってQRコードの画像が生成され、表示制御部303によってユーザ端末10のタッチパネルディスプレイの画面上にQRコードの画像が表示される(ステップS806)。
【0062】
ユーザが画面に表示されたQRコードをストアのスタッフに見せると、スタッフがストア端末11のコードリーダ310を用いてQRコードを読み取る(ステップS810)。続いて、コード解析部311が、QRコードをデコードして元データの暗号文及びQRコードの管理情報を抽出する(ステップS811)。そして、取引情報取得部312が、取引情報を取得し(ステップS812)、決済要求部313が、「元データの暗号文」、「管理情報」、及び「取引情報」を付した決済要求を決済サーバ12に送信する(ステップS813)。
【0063】
決済サーバ12が、ストア端末11から決済要求を受信すると(ステップS824)、認証処理部320が、決済要求に含まれる「管理情報」に基づき、登録データベース322から当該管理情報に紐づけられたユーザの公開鍵を読み出し、当該公開鍵を用いて、決済要求に含まれる「元データの暗号文」を復号する(ステップS825)。復号に成功した場合は(ステップS826のYES)、認証OK、すなわち、この決済要求がユーザIDで特定される登録ユーザからの正当な要求であるとみなすことができる。一方、復号に失敗した場合は(ステップS826のNO)、認証NG、すなわち、この決済要求がなりすましや改ざん等の不正利用によるものであると判断し、この決済要求を拒否(無効化)する(ステップS827)。認証OKの場合は、決済処理部321が、復号された元データと取引情報に基づき決済処理を行い(ステップS828)、決済完了通知をストア端末11及びユーザ端末10にそれぞれ送信する(ステップS829)。
【0064】
以上述べた本実施形態の構成によれば、ユーザ端末10と決済サーバ12の間のデータ交換をセキュアに行うことができるため、上述した実施形態と同様の作用効果を得ることができる。
【0065】
<第4実施形態>
第4実施形態の特徴は、QRコードに時間情報を埋め込む点である。例えば、第1〜第3実施形態において、元データ生成部300、520,700が元データを生成する際、又は、コード画像生成部302、コードデータ生成部521がQRコード画像又はQRコードデータを生成する際に、時間情報を埋め込む。時間情報は、データ生成時のタイムスタンプでもよいし、QRコードを有効又は無効にする時間的な条件でもよい。このような時間情報をQRコードに埋め込んでおけば、例えば、ストア端末11においてQRコードを読み込んだとき、あるいは、決済サーバ12において決済又は認証を行うときに、QRコードに埋め込まれている時間情報が所定の条件を満たしているか否かを判定し、所定の条件を満たさなかった場合に、当該QRコードを無効としてもよい。
【0066】
この構成によれば、QRコードによる認証又は決済に時期的制限を設定することができるので、セキュリティを一層高めることができる。また、予め設定した日時や時間帯のみ使用可能なクーポンやチケットとして利用するなど、ユニークかつ利便性の高い使い方も可能となる。なお、本実施形態では、QRコードに埋め込まれている時間情報が所定の条件を満たさなかった場合にQRコードを無効化したが、逆に、QRコードに埋め込まれている時間情報が所定の条件を満たした場合にQRコードを無効化するような設定にしてもよい。
【0067】
<第5実施形態>
第5実施形態の特徴は、QRコードに位置情報を埋め込む点である。例えば、第1〜第3実施形態において、元データ生成部300、520,700が元データを生成する際、又は、コード画像生成部302、コードデータ生成部521がQRコード画像又はQRコードデータを生成する際に、位置情報を埋め込む。位置情報は、データ生成時にGPSセンサ27で取得された現在位置の情報でもよいし、QRコードを有効又は無効にする地理的な条件でもよい。このような位置情報をQRコードに埋め込んでおけば、例えば、ストア端末11においてQRコードを読み込んだとき、あるいは、決済サーバ12において決済又は認証を行うときに、QRコードに埋め込まれている位置情報が所定の条件を満たしているか否かを判定し、所定の条件を満たさなかった場合に、当該QRコードを無効としてもよい。
【0068】
この構成によれば、QRコードによる認証又は決済に位置的制限を設定することができるので、セキュリティを一層高めることができる。また、予め設定した場所内でのみ使用可能なクーポンやチケットとして利用するなど、ユニークかつ利便性の高い使い方も可能となる。これにより、例えばイベント来場者にだけ決済可能な限定グッズを配布したり、病院内のような限定的な場所でのみ有効あるいは無効となるチケットを発行したりすることも可能である。なお、なお、本実施形態では、QRコードに埋め込まれている位置情報が所定の条件を満たさなかった場合にQRコードを無効化したが、逆に、QRコードに埋め込まれている位置情報が所定の条件を満たした場合にQRコードを無効化するような設定にしてもよい。また、第4実施形態と第5実施形態を組み合わせ、時間的な条件と地理的な条件の両方を用いてQRコードを有効化又は無効化するような制御を行ってもよい。
【0069】
<第6実施形態>
図9に示すように、ユーザ・プログラム100の機能の全部又は一部が、ユーザ端末10に内蔵もしくは接続されたセキュアエレメント90によって提供されてもよい。図9は、セキュアエレメント90を備えるユーザ端末10のハードウェア構成を模式的に示すブロック図である。
【0070】
セキュアエレメント90とは物理的破壊によってICの内容を読み取ろうとする故障利用解析、消費電力の変化から処理内容を読み取ろうとする相関電力解析などへの耐性(耐タンパー性)を持ち、主に機密情報を管理するために用いられるICチップである。セキュアエレメント90は、ユーザ端末10本体の制御基板91(プロセッサ911、RAM912、不揮発性メモリ913)とは独立したICチップであり、プロセッサ901、RAM902、不揮発性メモリ903を有している。セキュアエレメント90はユーザ端末10本体のプロセッサ911などと通信を行う。
【0071】
ユーザ・プログラム100の機能の一部をセキュアエレメント90により提供する場合、クリティカルな情報(例えば、ユーザ情報記憶部304、鍵記憶部305)及びクリティカルな情報を用いるプログラム(元データ生成部300、700、変換部301、501、701、コード画像生成部302など)をセキュアエレメント90の不揮発性メモリ
903に格納するとよい。また、これらクリティカルな情報を用いるプログラムの実行は、セキュアエレメント90のプロセッサ901が行うとよい。
【0072】
以上述べた構成によれば、リバースエンジニアリングによる情報の盗難・漏えいを防止できるので、秘密鍵や共通鍵、電子証明書などの安全な保護が可能となる。したがって、セキュリティを一層高めることができる。
【0073】
<第7実施形態>
図10図11に示すように、ユーザ・プログラム100の機能の全部又は一部が、ユーザ端末10に内蔵もしくは接続されたSIMカード70によって提供されてもよい。図10は、SIMカード70を備えるユーザ端末10のハードウェア構成を模式的に示すブロック図であり、図11は、SIMカード70の外観及び装着形態を模式的に示した図である。
【0074】
SIMカード70は、幅15mm×高さ12mm×厚み0.76mmの樹脂プレート上にICチップが実装された構造を有する。
【0075】
図10に示すように、SIMカード70は、プロセッサ1001、RAM1002、不揮発性メモリ1003、及び、8つのピン1005(電極)を有する。不揮発性メモリ1003には、SIMカード70のユニークなシリアルナンバー(ICCID)、加入者識別情報(IMSI)などのデータと、プロセッサ1001で実行されるプログラムとが格納されている。8つのピン1005は、電源入力端子、リセット端子、クロック端子、アース端子、プログラム用電圧入力端子、I/O端子、予備端子を含む。
【0076】
図10は、SIMカード70がSIMカードスロット1004に装着された状態を模式的に示している。SIMカード70のピン1005がユーザ端末10の制御基板91の端子1006に接続される。
【0077】
SIMカード70は、ユーザが移動体通信事業者(MNO)又は仮想移動体通信事業者(MVNO)の提供する移動通信サービスに加入したときに、その事業者から提供されるものである。SIMカード70に格納されるデータやプログラムは事業者ごとに相違しているが、SIMカード70自体の基本的な構造は国際規格に準拠している限りにおいて同一である。
【0078】
なお、本実施形態では、標準−SIMを例に挙げたが、SIMカード70としてはmicro−SIMやnano−SIMを用いることもできる。通常、SIMカードは、図11に示すようにユーザ端末10(スマートフォンなど)に挿入して使用される。
【0079】
ユーザ・プログラム100の機能の一部をSIMカード70により提供する場合、クリティカルな情報(例えば、ユーザ情報記憶部304、鍵記憶部305)及びクリティカルな情報を用いるプログラム(元データ生成部300、700、変換部301、501、701、コード画像生成部302など)をSIMカード70の外部からのアクセスが不可能なエリアを有する不揮発性メモリ1003に格納するとよい。また、これらクリティカルな情報を用いるプログラムの実行は、SIMカード70のプロセッサ1001が行うとよい。
【0080】
以上述べた構成によれば、リバースエンジニアリングによる情報の盗難・漏えいを防止できるので、秘密鍵や共通鍵、電子証明書などの安全な保護が可能となる。したがって、セキュリティを一層高めることができる。
【0081】
<第8実施形態>
図12図13に示すように、ユーザ・プログラム100の機能の全部又は一部が、ユーザ端末10に内蔵もしくは接続されたSIMカード70に重ねて貼り付けられたICカード1200によって提供されてもよい(その利用形態は、図13に示すとおりである)。
【0082】
図12は、ICカード1200を備えるユーザ端末10のハードウェア構成を模式的に示すブロック図であり、図13は、SIMカード70とICカード1200の外観及び装着形態を模式的に示した図である。
【0083】
ICカード1200は、幅と高さがSIMカード70と同じ又は略同じサイズであり、厚みが約0.1〜0.2mm程度の可撓性フィルムにICチップが埋め込まれた構造を有する。ICカード1200も、プロセッサ1201、RAM1202、不揮発性メモリ1203、及び、8つのピン1204(電極)を有している。
【0084】
ICカード1200の8つのピン1204は、ICカード1200の表面と裏面の両方に露出しており、かつ、SIMカード70の8つのピン1005と同じ配列になっている。図13に示すように、このICカード1200をSIMカード70に重ねて貼り付けることにより、ICカード1200とSIMカード70の対応するピン(電極)同士が物理的・電気的に接続されることとなる。
【0085】
ICカード1200は極めて薄いため、ICカード1200を貼り付けた状態のSIMカード70をユーザ端末10のSIMカードスロット1004に装着することが可能である。
【0086】
図12は、ICカード1200とSIMカード70がSIMカードスロット1004に装着された状態を模式的に示している。ICカード1200の表面のピン1204がユーザ端末10の制御基板91の端子1006に接続され、SIMカード70のピン1005はICカード1200のピン1204を介して制御基板91の端子1006に接続されることとなる。
【0087】
ユーザ端末10のプロセッサ911は、ICカード1200とSIMカード70のいずれに対しても選択的にアクセスすることができる。言い換えると、ユーザ端末10のプロセッサ911で動作するアプリケーションプログラムは、ICカード1200と通信を行うモードとSIMカード70と通信を行うモードを選択的に切り替えることができる。
【0088】
前者のモードの場合、ICカード1200のプロセッサ1201は、ユーザ端末10から受信した信号(命令)を自身で処理し、SIMカード70には伝送しない。他方、後者のモードの場合は、ICカード1200のプロセッサ1201は、ユーザ端末10とSIMカード70の間の信号を仲介する(スルーする)動作を行う。
【0089】
本実施形態のように、通信用のSIMカード70に重ね貼りするタイプのICカード1200は「サブSIM」とも呼ばれる。サブSIMタイプのICカード1200を用いることにより、次のようなメリットがある。
【0090】
SIMカードスロット1004を有する電子機器であれば、ICカード1200の装着が可能である(すなわち、電子機器側に特別な構造や細工が一切不要であり、ほとんど全ての電子機器にICカード1200の装着が可能である)。
【0091】
SIMカードスロット1004が1つしかない電子機器に対しても(言い換えると、S
IMカードスロット1004の空きが無い場合でも)、ICカード1200を装着可能である。
【0092】
また、通信用のSIMカード70とICカード1200とは機能的には完全に独立しており、互いに影響を与えることが無いため、ICカード1200を装着した後も音声通信やデータ通信をこれまで同様利用することができる。しかも、どの事業者のSIMカードに対しても追加可能であるため、導入・普及が容易である。
【0093】
ユーザ・プログラム100の機能の一部をICカード1200により提供する場合、クリティカルな情報(例えば、ユーザ情報記憶部304、鍵記憶部305)及びクリティカルな情報を用いるプログラム(元データ生成部300、700、変換部301、501、701、コード画像生成部302など)をICカード1200の外部からのアクセスが不可能なエリアを有する不揮発性メモリ1203に格納するとよい。また、これらクリティカルな情報を用いるプログラムの実行は、ICカード1200のプロセッサ1201が行うとよい。
【0094】
以上述べた構成によれば、リバースエンジニアリングによる情報の盗難・漏えいを防止できるので、秘密鍵や共通鍵、電子証明書などの安全な保護が可能となる。したがって、セキュリティを一層高めることができる。
【0095】
<その他>
上述した実施形態は本発明の具体例の一つを説明したに過ぎず、本発明の技術的範囲は上述した実施形態の内容に限定されるものではなく、また本発明はその技術思想の範囲内で様々な具体的形態をとりうるものである。例えば、上述した実施形態ではQRコードを例示したが、バーコードなどの一次元コードや、QRコード以外の二次元コードにも本発明を好ましく適用可能である。また、上述した実施形態の一つではサーバにおいてコード用データを生成しユーザ端末に送信するフローを例示したが、QRコードの画像データをサーバで作成し、画像データをユーザ端末に送信してもよい(この場合は、ユーザ端末側で画像を生成する処理は必要ない。)。また、サブSIMタイプのICカード1200を例示したが、SIMカードスロット1004を複数備える携帯機器であれば、一般的なmicro−SIMやnano−SIMと同じ仕様のICカードを(通信用SIMカードとは別のスロットに)装着してもよい。あるいは、SIMカードスロット以外のスロットに装着するタイプのICカードを用いてもよい。また、公開鍵暗号方式ではなく、共通鍵暗号方式を用いてもよい。共通鍵暗号方式の場合は、例えば、ユーザ端末にユーザ・プログラムをインストールするとき、あるいは、ユーザがQRコード決済サービスに会員登録するときなどに、ユーザ端末と決済サーバとの間で共通鍵の交換を行えばよい。
【符号の説明】
【0096】
1:QRコード決済システム
10:ユーザ端末(第1端末)
11:ストア端末(第2端末)
12:決済サーバ
100:ユーザ・プログラム(第1端末プログラム)
101:QRコード
110:ストア・プログラム(第2端末プログラム)
111:コードリーダ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13