(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-02-19
(45)【発行日】2024-02-28
(54)【発明の名称】決済サーバ、決済方法及びプログラム
(51)【国際特許分類】
G06Q 20/40 20120101AFI20240220BHJP
【FI】
G06Q20/40
(21)【出願番号】P 2022185475
(22)【出願日】2022-11-21
【審査請求日】2022-11-25
(73)【特許権者】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100139066
【氏名又は名称】伊藤 健太郎
(72)【発明者】
【氏名】パウロ フェルナンド
(72)【発明者】
【氏名】鈴掛 亘
(72)【発明者】
【氏名】ケイザック ジュリアン
【審査官】宮地 匡人
(56)【参考文献】
【文献】中国特許出願公開第113822664(CN,A)
【文献】特開2021-021992(JP,A)
【文献】特開2020-204882(JP,A)
【文献】IBM Security Verify Access TOTP ワンタイム・パスワード・メカニズムの構成,[online],IBM,2021年02月28日,https://www.ibm.com/docs/ja/sva/10.0.1?topic=authentication-configuring-totp-one-time-password-mechanism,[検索日 2023.11.13]
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
ユーザが利用するユーザ端末へ鍵情報を送信する送信部と、
店舗端末から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信する受信部と、
前記鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成する生成部と、
前記複数の認証情報と前記店舗端末から受信した認証情報との照合結果を用いて、前記ユーザに対する決済処理を行う決済処理部と、を有
し、
前記決済要求は、決済金額を含み、
前記決済処理部は、前記鍵情報を前記ユーザ端末に送信したタイミングから前記決済要求を受信したタイミングまでの時間が長いほど、前記ユーザの決済上限金額を下げる、
決済サーバ。
【請求項2】
ユーザが利用するユーザ端末へ鍵情報を送信する送信部と、
店舗端末から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信する受信部と、
前記鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成する生成部と、
前記複数の認証情報と前記店舗端末から受信した認証情報との照合結果を用いて、前記ユーザに対する決済処理を行う決済処理部と、を有し、
前記決済処理部は、前記店舗端末から受信する決済要求の不正リスク度合いに基づいて、前記ユーザの決済上限金額を変更する、
決済サーバ。
【請求項3】
前記受信部は、前記店舗端末がオフライン状態の前記ユーザ端末から取得した前記認証情報と前記ユーザ識別子とを示す複数桁の文字列、を含む前記決済要求を、前記店舗端末から受信する、
請求項1
又は2に記載の決済サーバ。
【請求項4】
前記送信部は、前記決済処理を行った後、前記ユーザ端末がオンライン状態であることを検出した場合に、前記ユーザ端末に対し、前記決済処理の結果を送信する、
請求項1
又は2に記載の決済サーバ。
【請求項5】
前記受信部は、複数の店舗端末の各々から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信し、
前記受信部が前記複数の店舗端末の各々から受信する認証情報は、同一の前記鍵情報に基づいて生成される、
請求項1
又は2に記載の決済サーバ。
【請求項6】
前記受信部は、前記店舗端末から、前記認証情報と前記ユーザ識別子とを示す複数桁の文字列を含む前記決済要求を受信し、
前記複数桁の文字列は、前記店舗端末で、前記ユーザ端末の画面に表示されたバーコードから読み取られた文字列である、
請求項1
又は2に記載の決済サーバ。
【請求項7】
前記バーコードには、前記ユーザ端末がオフライン状態であることを示す識別情報が埋め込まれており、
前記受信部は、前記店舗端末から、前記認証情報と前記ユーザ識別子と前記識別情報とを示す前記複数桁の文字列、を含む前記決済要求を受信する、
請求項
6に記載の決済サーバ。
【請求項8】
前記決済要求は、決済金額を含み、
前記決済処理部は、前記決済金額が、前記ユーザの決済上限金額を超える場合、前記決済処理を行わない、
請求項1
又は2に記載の決済サーバ。
【請求項9】
前記決済処理部は、前記店舗端末から前記決済要求を受信した日時と前記店舗端末の位置情報とに基づいて前記不正リスク度合いを評価する、
請求項
2に記載の決済サーバ。
【請求項10】
前記生成部は、前記複数の異なる時刻情報として、前記決済要求を受信した受信時刻から所定の時間間隔で所定数の過去の時刻情報を算出し、前記受信時刻に対応する時刻情報及び前記所定数の過去の時刻情報に基づいて前記複数の認証情報を生成する、
請求項1
又は2に記載の決済サーバ。
【請求項11】
前記生成部は、前記複数の異なる時刻情報として、更に、前記受信時刻から所定の時間間隔で所定数の未来の時刻情報を算出し、前記受信時刻に対応する時刻情報、前記所定数の過去の時刻情報及び前記所定数の未来の時刻情報に基づいて前記複数の認証情報を生成する、
請求項
10に記載の決済サーバ。
【請求項12】
前記決済処理部は、前記複数の認証情報の中に、前記店舗端末から受信した認証情報が含まれる場合に、前記決済処理を行う、
請求項1
又は2に記載の決済サーバ。
【請求項13】
前記認証情報は、非可逆性を有し、
前記複数の認証情報の各々は、非可逆性を有する、
請求項1
又は2に記載の決済サーバ。
【請求項14】
決済サーバが行う決済方法であって、
ユーザが利用するユーザ端末へ鍵情報を送信するステップと、
店舗端末から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信するステップと、
前記鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成するステップと、
前記複数の認証情報と前記店舗端末から受信した認証情報との照合結果を用いて、前記ユーザに対する決済処理を行うステップと、を含
み、
前記決済要求は、決済金額を含み、
前記決済処理を行うステップは、前記鍵情報を前記ユーザ端末に送信したタイミングから前記決済要求を受信したタイミングまでの時間が長いほど、前記ユーザの決済上限金額を下げる、
決済方法。
【請求項15】
決済サーバが行う決済方法であって、
ユーザが利用するユーザ端末へ鍵情報を送信するステップと、
店舗端末から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信するステップと、
前記鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成するステップと、
前記複数の認証情報と前記店舗端末から受信した認証情報との照合結果を用いて、前記ユーザに対する決済処理を行うステップと、を含み、
前記決済処理を行うステップは、前記店舗端末から受信する決済要求の不正リスク度合いに基づいて、前記ユーザの決済上限金額を変更する、
決済方法。
【請求項16】
コンピュータに、
ユーザが利用するユーザ端末へ鍵情報を送信するステップと、
店舗端末から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信するステップと、
前記鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成するステップと、
前記複数の認証情報と前記店舗端末から受信した認証情報との照合結果を用いて、前記ユーザに対する決済処理を行うステップと、
を実行させ
、
前記決済要求は、決済金額を含み、
前記決済処理を行うステップは、前記鍵情報を前記ユーザ端末に送信したタイミングから前記決済要求を受信したタイミングまでの時間が長いほど、前記ユーザの決済上限金額を下げる、
プログラム。
【請求項17】
コンピュータに、
ユーザが利用するユーザ端末へ鍵情報を送信するステップと、
店舗端末から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信するステップと、
前記鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成するステップと、
前記複数の認証情報と前記店舗端末から受信した認証情報との照合結果を用いて、前記ユーザに対する決済処理を行うステップと、
を実行させ、
前記決済処理を行うステップは、前記店舗端末から受信する決済要求の不正リスク度合いに基づいて、前記ユーザの決済上限金額を変更する、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、決済サーバ、決済方法及びプログラムに関する。
【背景技術】
【0002】
ユーザ端末がコードを表示し、当該コードを店舗端末が読み取ることによって決済を行うコード決済が一般に普及している。特許文献1には、通信状況等により端末がオフラインの状態であっても、コード決済を可能にする技術が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載の技術では、店舗POSシステムは、端末に表示されるコード画像から決済用番号及びタイムスタンプ情報を取得して決済サーバへ送信するため、店舗POSシステム側に決済用番号及びタイムスタンプ情報を知られてしまうおそれがある。
【0005】
そこで、本発明は、コード決済時のセキュリティを向上させることが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様に係る決済サーバは、ユーザが利用するユーザ端末へ鍵情報を送信する送信部と、店舗端末から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信する受信部と、前記鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成する生成部と、前記複数の認証情報と前記店舗端末から受信した認証情報との照合結果を用いて、前記ユーザに対する決済処理を行う決済処理部と、を有する。
【発明の効果】
【0007】
本発明によれば、コード決済時のセキュリティを向上させることが可能な技術を提供することができる。
【図面の簡単な説明】
【0008】
【
図1】本実施形態に係る決済システムの一例を示す図である。
【
図2】決済サーバ、店舗端末及びユーザ端末のハードウェア構成例を示す図である。
【
図3】決済サーバの機能ブロック構成例を示す図である。
【
図4】鍵管理DB及び決済DBの一例を示す図である。
【
図5】店舗端末の機能ブロック構成例を示す図である。
【
図6】ユーザ端末の機能ブロック構成例を示す図である。
【
図7】決済システムが行う処理手順の一例を示すシーケンス図である。
【
図8】コード画像に埋め込まれる文字列のフォーマット例を示す図である。
【
図9】決済サーバが行う決済処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0009】
添付図面を参照して、本発明の実施形態について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
【0010】
<システム構成>
図1は、本実施形態に係る決済システムの一例を示す図である。決済システム1では、決済サーバ10と、店舗端末20と、ユーザ端末30とが、無線又は有線の通信ネットワークNを介して接続されている。店舗端末20及びユーザ端末30は、1つに限定されず、複数であってもよい。
【0011】
決済サーバ10は、ユーザに決済サービスを提供する。決済サーバ10は、1又は複数の物理的なサーバ等から構成されていてもよいし、仮想的なサーバを用いて構成されていてもよいし、クラウドサーバを用いて構成されていてもよい。
【0012】
店舗端末20は、店舗にて店員等が利用する端末である。店舗端末20は、POS(Point of Sales)端末であってもよいし、タブレット端末及びスマートフォン等であってもよい。店舗端末20は、コードリーダー又はカメラを備えており、ユーザ端末30の画面に表示されたコード画像を読み取ることができる。店舗端末20には店舗端末用の決済アプリケーションがインストールされており、当該決済アプリケーションが店舗端末20で動作することで、本実施形態に係る決済機能が店舗端末20で実現されるようにしてもよい。
【0013】
ユーザ端末30は、店舗で支払い等を行うユーザが利用する端末であり、例えば、スマートフォン、タブレット端末、携帯電話及びウェアラブルデバイス等を含む。ユーザ端末30にはユーザ端末用の決済アプリケーションがインストールされており、当該決済アプリケーションがユーザ端末30で動作することで、本実施形態に係る決済機能がユーザ端末30で実現されるようにしてもよい。
【0014】
本実施形態において、「オンライン」及び「オンライン状態」とは、ユーザ端末30が通信ネットワークNを介して決済サーバ10と通信可能な状態を意味する。一方、「オフライン」及び「オフライン状態」とは、何らかの理由で、ユーザ端末30が決済サーバ10と通信することができない状態を意味する。
【0015】
ユーザは、店舗で決済をする際、ユーザ端末30を操作することで決済アプリケーションを起動させる。ユーザ端末30は、オンラインである場合、コード画像(単に「コード」と称してもよい)を生成するための情報を決済サーバ10に要求し、決済サーバ10から取得した情報から生成したコード画像を、ユーザ端末30が備える画面に表示する。店舗端末20は、店舗端末20が備えるコードリーダー又はカメラで当該コード画像を読み取ると、当該コード画像に埋め込まれた情報と決済金額と店舗ID(Identifier)とを決済サーバ10に送信する。決済サーバ10は、店舗端末20から受信した情報を用いて決済対象のユーザを特定し、当該ユーザが所持する価値から決済金額に対応する価値を減算することで、決済処理を行う。
【0016】
なお、店舗IDは、決済サーバ10が提供する決済サービスに加入している店舗を一意に識別する識別子である。また、「価値」は、通貨そのものであってもよいし、ポイントなど、通貨と同等の価値を有するものであってもよい。また、「コード画像」は、一次元コード(例えばバーコード)であってもよいし、二次元コード(例えばQRコード(登録商標))であってもよいし、三次元コードであってもよい。バーコードを用いる場合、格納可能なデータ量は少ないものの、処理負荷を軽減させることができる。また、情報からコード画像を生成することを、コード画像をエンコードすると称してもよい。また、コード画像から情報を読み出すことを、コード画像をデコードすると称してもよい。
【0017】
ここで、ユーザ端末30がオフライン状態である場合、ユーザ端末30は決済サーバ10と通信することができないことから、コード画像を生成するための情報を決済サーバ10から取得することができない。そこで、本実施形態では、ユーザ端末30及び決済サーバ10に同一の鍵情報(SEEDと称してもよい)を記憶させておき、ユーザ端末30は、オフライン状態である場合、鍵情報及び時刻情報に基づいて「認証情報」を生成し、認証情報及びユーザIDが組み込まれたコード画像を、ユーザ端末30が備える画面に表示する。なお、ユーザIDは、決済サーバ10が提供する決済サービスを利用するユーザを一意に識別する識別子である。
【0018】
ここで、「認証情報」は、鍵情報及び時刻情報を予め定められた関数(アルゴリズム)に入力することで生成される情報であってもよい。当該関数は、決済サーバ10及びユーザ端末30が認証情報を生成する際に共通に用いる関数である。また、「認証情報」は、ワンタイムパスワード又は所定情報などと呼ばれてもよい。また、「時刻情報」は、タイムスタンプなどと呼ばれてもよい。
【0019】
店舗端末20は、店舗端末20が備えるコードリーダー又はカメラで当該コード画像を読み取ることで、コード画像に埋め込まれた情報を取得し、取得した当該情報、決済金額及び店舗IDを含む決済要求を決済サーバ10に送信する。コード画像に埋め込まれた情報には、認証情報及びユーザIDが含まれている。決済サーバ10は、ユーザIDに対応する鍵情報及び決済要求を受信した時刻を用いて1以上の認証情報を生成し、生成した1以上の認証情報と、店舗端末20から受信した情報に含まれる認証情報が一致するか否かに基づいて、正当な決済要求であるか否かを判定する。決済サーバ10は、正当な決済要求と判定した場合、ユーザが所持する金銭から決済金額を減算することで、決済処理を行う。これにより、ユーザ端末30がオフライン状態である場合であっても決済処理を行うことが可能になる。
【0020】
<ハードウェア構成>
図2は、決済サーバ10、店舗端末20及びユーザ端末30のハードウェア構成例を示す図である。決済サーバ10、店舗端末20及びユーザ端末30は、CPU(Central Processing Unit)、GPU(Graphical Processing Unit)等のプロセッサ11、メモリ、HDD(Hard Disk Drive)及び/又はSSD(Solid State Drive)等の記憶装置12、有線又は無線通信を行う通信IF(Interface)13、入力操作を受け付ける入力デバイス14、及び情報の出力を行う出力デバイス15を有する。入力デバイス14は、例えば、キーボード、タッチパネル、マウス及び/又はマイク等である。出力デバイス15は、例えば、ディスプレイ、タッチパネル及び/又はスピーカ等である。決済サーバ10、店舗端末20及びユーザ端末30はコンピュータと呼ばれてもよい。
【0021】
<機能ブロック構成>
(決済サーバ)
図3は、決済サーバ10の機能ブロック構成例を示す図である。決済サーバ10は、記憶部100と、送信部101と、受信部102と、生成部103と、決済処理部104とを含む。記憶部100は、決済サーバ10が備える記憶装置12を用いて実現することができる。また、送信部101と、受信部102と、生成部103と、決済処理部104とは、決済サーバ10のプロセッサ11が、記憶装置12に記憶されたプログラムを実行することにより実現することができる。また、当該プログラムは、記憶媒体に格納することができる。当該プログラムを格納した記憶媒体は、コンピュータ読み取り可能な非一時的な記憶媒体(Non-transitory computer readable medium)であってもよい。非一時的な記憶媒体は特に限定されないが、例えば、USBメモリ又はCD-ROM等の記憶媒体であってもよい。
【0022】
記憶部100は、鍵情報を格納する鍵管理DB(Data Base)100aと、決済処理に用いる各種情報を格納する決済DB100bとを記憶する。
【0023】
図4は、鍵管理DB100a及び決済DB100bの一例を示す図である。鍵管理DB100aは、ユーザIDと、鍵情報と、鍵情報をユーザ端末30に送信した日時とを対応づけて管理する。決済DB100bは、ユーザIDと、ユーザが所持する価値(所持価値)と、ユーザが行った決済の履歴(決済履歴)とを対応づけて管理する。決済履歴には、ユーザが決済を行った日時、決済金額及びユーザが決済を行った店舗の店舗ID等が格納される。
【0024】
送信部101は、店舗端末20及びユーザ端末30に対し各種の情報を送信する。例えば、送信部101は、ユーザが利用するユーザ端末30へ鍵情報を送信する。また、送信部101は、決済処理部104により決済処理が行われた後、決済処理の結果(決済完了又は決済エラー等)を店舗端末20に送信するようにしてもよい。また、送信部101は、決済処理部104により決済処理が行われた後、ユーザ端末30がオンライン状態であることを検出した場合に、ユーザ端末30に対し、決済処理の結果を送信するようにしてもよい。
【0025】
受信部102は、店舗端末20及びユーザ端末30から、各種の情報を受信する。例えば、受信部102は、鍵情報及び所定の時刻情報に基づいて生成された認証情報とユーザのユーザID(ユーザ識別子)とを含む決済要求を受信する。
【0026】
また、受信部102は、店舗端末20が、オフライン状態のユーザ端末30から取得した認証情報とユーザIDとを示す複数桁の文字列、を含む決済要求を、店舗端末20から受信するようにしてもよい。また、決済要求に含まれる複数桁の文字列は、店舗端末20で、ユーザ端末30の画面に表示されたコード画像(例えばバーコード)から読み取られた文字列そのものであってもよい。すなわち、決済要求には、店舗端末20がコード画像から読み取った、当該コード画像に埋め込まれた認証情報及びユーザIDを示す複数桁の文字列がそのまま含まれていてもよい。
【0027】
また、コード画像には、ユーザ端末30がオフライン状態であることを示す識別情報が埋め込まれていてもよい。また、識別情報は、認証情報及びユーザIDとは別個の情報であってもよい。つまり、受信部102は、店舗端末20から、認証情報とユーザIDと識別情報とを示す複数桁の文字列、を含む決済要求を受信するようにしてもよい。若しくは、決済要求に、認証情報とユーザIDとを示す複数桁の文字列が含まれていることが、ユーザ端末30がオフライン状態であることを暗に示していてもよい。この場合、決済サーバ10は、決済要求に、認証情報とユーザIDとを示す複数桁の文字列が含まれている場合、ユーザ端末30がオフライン状態であると認識するようにしてもよい。これにより、決済サーバ10に、ユーザ端末30がオフラインであるのかオンラインであるのかを認識させることが可能になる。
【0028】
本実施形態では、鍵情報はユーザに対応づけて管理される。したがって、オフライン状態であるユーザ端末30は、どの店舗で決済を行う場合であっても、同一の鍵情報を利用して認証情報を生成するようにしてもよい。つまり、受信部102は、複数の店舗端末20の各々から、鍵情報及び所定の時刻情報に基づいて生成された認証情報とユーザのユーザIDとを含む決済要求を受信してもよい。このとき、受信部102が複数の店舗端末20の各々から受信する認証情報は、同一の鍵情報に基づいて生成されるものであってもよい。同一の鍵情報から認証情報を繰り返し生成することで、認証情報を生成する度に鍵情報を更新する方法と比較して、決済サーバ10及びユーザ端末30間の通信負荷を軽減することができる。また、認証情報を生成する度に鍵情報を更新する方法の場合、オフライン状態では鍵情報を更新することができないことから、ユーザ端末30は、鍵情報を使い果たしてしまうと再度オンライン状態になるまで決済を行うことはできない。しかしながら、本実施形態では同一の鍵情報から認証情報を繰り返し生成できることから、ユーザ端末30は、オフライン状態が継続する場合であっても決済を繰り返し行うことが可能になる。
【0029】
生成部103は、鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成する。なお、時刻情報は、所定の時間単位で表現される時刻であってもよい。所定の時間単位は、例えば秒単位(例えば1秒又は10秒等)であってもよいし、分単位(例えば1分又は2分等)であってもよい。
【0030】
また、生成部103は、複数の異なる時刻情報として、決済要求を受信した受信時刻から所定の時間間隔で所定数の連続した過去の時刻情報を算出し、当該受信時刻に対応する時刻情報及び当該所定数の過去の時刻情報に基づいて複数の認証情報を生成するようにしてもよい。所定の時間間隔は任意であるが、例えば秒単位(例えば1秒又は10秒等)であってもよいし、分単位(例えば1分又は2分等)であってもよい。例えば、所定の時間単位が1分であり、所定の時間間隔が1分であり、所定数が2つであり、決済要求を受信した受信時刻が10時10分30秒である場合、生成部103は、10時10分、10時9分、10時8分にそれぞれ対応する3つの認証情報を生成するようにしてもよい。
【0031】
決済処理部104は、生成部103で生成された複数の認証情報と、店舗端末20から受信した認証情報との照合結果を用いて、ユーザに対する決済処理を行う。より具体的には、決済処理部104は、生成部103で生成された複数の認証情報の中に、店舗端末20から受信した認証情報が含まれる場合、決済要求は正当であると判断し、決済処理を行う(決済処理を進める)ようにしてもよい。また、決済処理部104は、生成部103で生成された複数の認証情報の中に、店舗端末20から受信した認証情報が含まれない場合、不正な決済要求であるか、若しくは何らかの異常が発生していると判断し、決済処理を行わない(決済を中止する)ようにしてもよい。
【0032】
また、決済処理部104は、決済要求は正当であると判断した場合において、決済金額が、ユーザの所持価値の範囲内である場合、ユーザの所持価値の中から決済金額を減算することで、決済処理を完了させるようにしてもよい。一方、決済金額が、決済上限金額を超える場合、決済処理部104は、決済処理を行わない(決済を中止する)ようにしてもよい。ここで、決済上限金額は、1回の決済及び/又は所定期間内に支払い可能な上限金額を意味しており、ユーザ端末30の状態(オフライン決済であるのかオンライン決済であるのか等)、支払い元の設定(クレジットカード支払い、ポイント支払い、銀行口座から引き落とし等)及び/又はユーザの属性(ランク、ステータス等)に基づいてユーザ毎に決定される。例えば、決済上限金額が、1回の決済あたり最大1万円、かつ、24時間あたり最大10万円に設定されているユーザが、2万円の商品を購入しようとした場合、決済処理部104は、1回あたりの決済上限金額を超えていることから決済処理を行わない。ユーザの決済上限金額を超える場合に決済処理を行わないようにすることで、例えば、不正利用時のリスクを抑えることが可能になる。
【0033】
(店舗端末)
図5は、店舗端末20の機能ブロック構成例を示す図である。店舗端末20は、記憶部200と、送信部201と、受信部202と、読取部203と、表示制御部204とを含む。記憶部200は、店舗端末20が備える記憶装置12を用いて実現することができる。また、送信部201と、受信部202と、読取部203と、表示制御部204とは、店舗端末20のプロセッサ11が、記憶装置12に記憶されたプログラムを実行することにより実現することができる。また、当該プログラムは、記憶媒体に格納することができる。当該プログラムは、上述の店舗端末用の決済アプリケーションであってもよい。当該プログラムを格納した記憶媒体は、コンピュータ読み取り可能な非一時的な記憶媒体であってもよい。非一時的な記憶媒体は特に限定されないが、例えば、USBメモリ又はCD-ROM等の記憶媒体であってもよい。
【0034】
記憶部200は、店舗ID情報200aを記憶する。店舗ID情報200aには、店舗端末20が設置される店舗の店舗IDが格納される。
【0035】
送信部201は、決済サーバ10に各種の情報を送信する。例えば、送信部201は、コード画像を読み取ることで取得した複数桁の文字列を含む決済要求を、決済サーバ10に送信する。
【0036】
受信部202は、決済サーバ10から各種の情報を受信する。例えば、受信部202は、決済サーバ10から決済処理の結果を示す情報を受信する。
【0037】
読取部203は、店舗端末20が備えるコードリーダー又はカメラを用いて、ユーザ端末30の画面に表示されたコード画像を読み取る。
【0038】
表示制御部204は、店舗端末20の画面に各種の情報を表示させる。例えば、表示制御部204は、決済サーバ10から受信した決済処理の結果を、店舗端末20の画面に表示させる。
【0039】
(ユーザ端末)
図6は、ユーザ端末30の機能ブロック構成例を示す図である。ユーザ端末30は、記憶部300と、送信部301と、受信部302と、生成部303と、表示制御部304とを含む。記憶部300は、ユーザ端末30が備える記憶装置12を用いて実現することができる。また、送信部301と、受信部302と、生成部303と、表示制御部304とは、ユーザ端末30のプロセッサ11が、記憶装置12に記憶されたプログラムを実行することにより実現することができる。また、当該プログラムは、記憶媒体に格納することができる。当該プログラムは、上述のユーザ端末用の決済アプリケーションであってもよい。当該プログラムを格納した記憶媒体は、コンピュータ読み取り可能な非一時的な記憶媒体であってもよい。非一時的な記憶媒体は特に限定されないが、例えば、USBメモリ又はCD-ROM等の記憶媒体であってもよい。
【0040】
記憶部300は、鍵情報300aと、ユーザID情報300bとを記憶する。鍵情報300aには、ユーザが利用する鍵情報が格納される。ユーザID情報300bには、ユーザのユーザIDが格納される。
【0041】
送信部301は、決済サーバ10に対し、各種の情報を送信する。例えば、送信部301は、決済サーバ10に対し、鍵情報の送信(更新)を要求するようにしてもよい。
【0042】
受信部302は、決済サーバ10から、各種の情報を受信する。例えば、受信部302は、決済サーバ10から鍵情報を受信する。
【0043】
生成部303は、鍵情報及び時刻情報に基づいて認証情報を生成する。なお、時刻情報は、決済サーバ10と同様、所定の時間単位で表現される時刻であってもよい。所定の時間単位は、例えば秒単位(例えば1秒又は10秒等)であってもよいし、分単位(例えば1分又は2分等)であってもよい。また、時刻情報は、現在時刻に対応する情報であってもよい。所定の時間単位は、決済サーバ10の生成部103が複数の認証情報を生成する際に用いる時間単位と同一に設定される。例えば、所定の時間単位が1分であり、かつ、現在時刻が、10時30分00秒~59秒のいずれかである場合、認証情報の生成に用いられる時刻情報は「10時30分」になる。
【0044】
表示制御部304は、ユーザ端末30がオフライン状態である場合に、認証情報とユーザ識別子とが埋め込まれたコード画像を、ユーザ端末30の画面に表示させる。コード画像には、更に、ユーザ端末30がオフライン状態であることを示す識別情報が、明示的又は暗示的に埋め込まれていてもよい。
【0045】
<処理手順>
図7は、決済システム1が行う処理手順の一例を示すシーケンス図である。
図7を用いて、ユーザ端末30がオフライン状態である場合に、決済処理を行う処理手順を説明する。なお、以下の説明において、ユーザ端末30が実行する処理のうちステップS103及びステップS104の処理手順は、ユーザ端末30がオフライン状態である場合に実行される処理であり、これら以外の処理は、ユーザ端末30がオンライン状態である場合に実行される処理であるものとする。
【0046】
ステップS100で、ユーザ端末30の送信部301は、決済サーバ10に対し鍵情報を要求する鍵情報要求を送信する。鍵情報要求には、ユーザIDが含まれる。
【0047】
ステップS101で、決済サーバ10の送信部101は、ユーザIDに対応する鍵情報を鍵管理DB100aから取得し、取得した鍵情報をユーザ端末30に送信する。
【0048】
ステップS102で、ユーザ端末30の受信部302は、受信した鍵情報を鍵情報300aに格納する。
【0049】
ステップS103で、ユーザ端末30の生成部303は、鍵情報及び時刻情報に基づいて認証情報を生成する。例えば、所定の時間単位が1分であり、かつ、現在時刻が、10時10分30秒である場合、生成部303は、鍵情報と時刻情報(10時10分)を予め定められた関数(アルゴリズム)に入力することで、認証情報を生成する。ここで、当該関数にはハッシュ関数が含まれていてもよい。すなわち、認証情報は、非可逆性を有しており、鍵情報及び時刻情報から認証情報を生成することは可能であるものの、認証情報から鍵情報及び時刻情報を生成又は推定することは不可能であってもよい。また、ハッシュ関数を用いて認証情報を生成することで、認証情報のデータ量を削減することができ、バーコードなど、格納可能なデータ量が少ないコード画像を利用することが可能になる。
【0050】
ステップS104で、生成部303は、認証情報及びユーザIDから、コード画像に埋め込む複数桁の文字列を生成し、生成した複数桁の文字列からコード画像を生成する。また、表示制御部304は、生成部303により生成されたコード画像をユーザ端末30の画面に表示させる。
【0051】
図8は、コード画像に埋め込まれる文字列のフォーマット例を示す図である。
図8に示すように、コード画像には、16桁の文字列が格納されてもよい。当該文字列は、数字のみであってもよいし、数字及びアルファベットの組み合わせであってもよいし、数字、記号(Symbol)及びアルファベットの組み合わせであってもよい。また、
図8に示すように、16桁のうち最初の6桁は固定値であり、次の5桁はユーザIDであり、次の4桁は認証情報であり、最後の1桁はチェックデジット(CD: Check Digit)であってもよい。また、固定値に代えて、又は固定値の一部に、ユーザ端末30がオフラインであることを示す識別情報を含めるようにしてもよい。
図7に戻り説明を続ける。
【0052】
ステップS105で、店舗端末20の読取部203は、店員の操作に従い、ユーザ端末30の画面に表示されるコード画像を読み取ることで、コード画像に埋め込まれた複数桁の文字列(例えば
図8に示す16桁の文字列)を取得する。
【0053】
ステップS106で、店舗端末20の送信部201は、読取部203で読み取られた複数桁の文字列(例えば
図8に示す16桁の文字列)と、決済金額と、店舗IDとを含む決済要求を決済サーバ10に送信する。
【0054】
ここで、店舗端末20は、コード画像から読み取った複数桁の文字列を、そのまま決済要求に含めて送信するようにしてもよい。つまり、店舗端末20は、コード画像に埋め込まれている複数桁の文字列の内容を把握せずに、そのまま決済サーバ10に送信するようにしてもよい。これにより、店舗端末20が、読みだした文字列をチェックデジットを用いて検査し、誤りがない場合に、複数桁の文字列の中から認証情報及びユーザIDを取り出して決済サーバ10に送信する場合と比較し、店舗端末20の処理負荷を軽減することが可能になる。
【0055】
ステップS107で、決済サーバ10の決済処理部104は、店舗端末20から受信した決済要求に基づいて決済処理を行う。
【0056】
ステップS108で、決済サーバ10の送信部101は、決済結果を示す情報を店舗端末20に送信する。
【0057】
ステップS109で、店舗端末20の表示制御部204は、決済サーバ10から受信した決済結果を店舗端末20の画面に表示させる。
【0058】
ステップS110で、ユーザ端末30の送信部301は、オフライン状態からオンライン状態に変化したことを検出した場合、オンライン通知を決済サーバ10に送信する。オンライン通知には、ユーザIDが含まれる。
【0059】
ステップS111で、決済サーバ10の送信部101は、ユーザ端末30がオンラインになったことを認識すると、未送信の決済結果をユーザ端末30に送信する。
【0060】
ステップS112で、ユーザ端末30の表示制御部304は、決済サーバ10から受信した決済結果を画面に表示させる。これにより、ユーザは、オフライン状態で行われた決済結果をユーザ端末30の画面で確認することが可能になる。
【0061】
図9は、決済サーバ10が行う決済処理の一例を示すフローチャートである。
図9を用いて、
図7のステップS107の処理手順を具体的に説明する。
【0062】
ステップS200で、受信部102は、店舗端末20から決済要求を受信する。
【0063】
ステップS201で、生成部103は、決済要求に含まれる複数桁の文字列の中からユーザIDを取得する。また、生成部103は、取得した当該ユーザIDに対応する鍵情報を、鍵管理DB100aから取得する。
【0064】
ステップS202で、生成部103は、決済要求を受信した時刻を含む過去の所定期間に対応する複数の認証情報を生成する。具体的には、生成部103は、決済要求を受信した受信時刻から所定の時間間隔で所定数の過去の時刻情報を算出し、受信時刻に対応する時刻情報及び所定数の過去の時刻情報を、予め定められた関数(アルゴリズム)に入力することで、複数の認証情報を生成する。ここで、決済サーバ10の説明と同様、当該関数にはハッシュ関数が含まれていてもよい。すなわち、複数の認証情報は、非可逆性を有しており、鍵情報及び時刻情報から複数の認証情報を生成することは可能であるものの、複数の認証情報の各々から鍵情報及び時刻情報を生成又は推定することは不可能であってもよい。
【0065】
例えば、所定の時間単位が1分であり、所定の時間間隔が1分であり、所定数が2つであり、決済要求を受信した受信時刻が10時10分30秒である場合、生成部103は、10時10分、10時9分及び10時8分に対応する3つの認証情報を生成する。他の例として、所定の時間単位が1秒であり、所定の時間間隔が1秒であり、所定数が20であり、決済要求を受信した受信時刻が10時10分50秒である場合、生成部103は、10時10分50秒、10時10分49秒、10時10分48秒、10時10分47秒、10時10分46秒、・・・、10時10分31秒に対応する20の認証情報を生成する。
【0066】
ステップS203で、決済処理部104は、決済要求に含まれる複数桁の文字列の中から認証情報を取得し、ステップS202の処理手順で生成された複数の認証情報の中に、決済要求から取得した認証情報が含まれるか否かを判断する。含まれる場合はステップS204の処理手順に進み、含まれない場合はステップS205の処理手順に進む。
【0067】
例えば、所定の時間単位が1分であり、所定の時間間隔が1分であり、所定数が2つであるものとする。また、ユーザ端末30が、認証情報を生成してコード画像を表示させた時刻は10時10分30秒であり、決済サーバ10が決済要求を受信した時刻は10時11分20秒であったとする。この場合、決済要求に含まれる認証情報は10時10分に対応する認証情報であり、決済サーバ10が生成する複数の認証情報は、10時11分、10時10分及び10時9分に対応する3つの認証情報である。つまり、決済要求に含まれる認証情報が、当該3つの認証情報の中に含まれることから、決済サーバ10は、ステップS204の処理手順に進む。
【0068】
一方、ユーザ端末30が、認証情報を生成してコード画像を表示させた時刻は10時10分30秒であったものの、決済サーバ10が決済要求を受信した時刻は10時20分20秒であったとする。この場合、決済要求に含まれる認証情報は10時10分に対応する認証情報であるが、決済サーバ10が生成する複数の認証情報は、10時20分、10時19分及び10時18分に対応する3つの認証情報である。つまり、決済要求に含まれる認証情報が、当該3つの認証情報に含まれないことから、決済サーバ10は、ステップS205の処理手順に進む。
【0069】
ステップS204で、決済処理部104は、決済を実行する。具体的には、決済要求に含まれる決済金額を、ユーザの所持価値から減算可能である場合、決済処理部104は、ユーザの所定価値から決済金額に対応する価値を減算するとともに、決済完了を店舗端末20に通知する。また、決済要求に含まれる決済金額を、ユーザの所持価値から減算不可能である場合、送信部101は、決済エラーを店舗端末20に通知する。
【0070】
ステップS205で、決済処理部104は、決済を実行せずに処理を終了する。このとき、送信部101は、決済エラーを店舗端末20に通知するようにしてもよい。
【0071】
<まとめ>
以上説明した実施形態によれば、決済サーバ10は、ユーザ端末30に表示されたコード画面を読み取った店舗端末20から、コード画像に埋め込まれた認証情報とユーザ識別子とを含む決済要求を受信し、決済要求を受信した時刻を含む複数の異なる時刻情報に基づいて生成した複数の認証情報と店舗端末20から受信した認証情報との照合結果を用いて、ユーザに対する決済処理を行うようにした。これにより、店舗端末20側に、認証情報の生成に用いられた時刻情報など、認証情報の内容を知られることなく決済処理を行うことが可能になるため、コード決済時のセキュリティを高めることが可能になる。
【0072】
また、本実施形態では、決済サーバ10で生成した、決済要求を受信した時刻を含む過去の所定期間に対応する複数の認証情報と、店舗端末20から受信した認証情報とを照合することで、決済処理が正当であるか否かを判定するようにした。これにより、過去に漏洩したコード画像を用いて不正に決済が行われるリスクを抑えることが可能になる。
【0073】
<変形例>
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態で説明したフローチャート、シーケンス、実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
【0074】
例えば、
図7のステップS101の処理手順は、所定間隔で繰り返し実行されるようにしてもよい。すなわち、ユーザ端末30に記憶される鍵情報は、所定間隔で更新されるようにしてもよい。
【0075】
また、決済サーバ10の決済処理部104は、鍵情報をユーザ端末30に送信した日時から決済要求を受信した日時までの経過時間に基づいて、決済上限金額を変更するようにしてもよい。例えば、決済処理部104は、鍵情報をユーザ端末30に送信したタイミングから、店舗端末20から決済要求を受信したタイミングまでの時間が長いほど、ユーザの決済上限金額を下げるようにしてもよい。鍵情報がユーザ端末30に送信されてからの経過時間が長くなるほど、鍵情報が漏洩するリスクが高まることが考えられる。したがって、鍵情報が送信されてからの経過時間が長いほど、決済上限金額を下げるようにすることで、鍵情報が漏洩して不正利用された場合のリスクを抑えることが可能になる。
【0076】
また、決済処理部104は、生成部103で生成された複数の認証情報と、店舗端末20から受信した決済要求に含まれる認証情報とを照合し、当該複数の認証情報のうち、店舗端末20から受信した認証情報と一致した認証情報の生成に用いられた時刻情報が過去の時刻であるほど、ユーザの決済上限金額を下げるようにしてもよい。コード画像がユーザ端末30の画面に表示されてからの経過時間が長いほど、コード画像が他人に知られるリスクが高まることが考えられる。したがって、ユーザ端末30で認証情報が生成されてからの経過時間が長いほど、決済上限金額を下げるようにすることで、コード画像が漏洩して不正利用された場合のリスクを抑えることが可能になる。
【0077】
また、決済処理部104は、店舗端末20から受信する決済要求の不正リスク度合いに基づいて、ユーザの決済上限金額を変更するようにしてもよい。例えば、決済処理部104は、店舗端末20から決済要求を受信した日時と、決済要求を受信した店舗端末20の位置情報とに基づいて不正リスク度合いを評価するようにしてもよい。店舗端末20の位置情報は、店舗IDと対応づけて記憶部100に格納されていてもよい。より具体的には、決済処理部104は、前回決済要求を受信した日時及び店舗の位置情報と、今回決済要求を受信した日時及び店舗の位置情報とを比較し、同一ユーザが不自然な移動をしていると判断される場合(例えば北海道での決済の5分後に東京で決済した場合等)に、不正リスク度合いが高いと評価するようにしてもよい。これにより、不正利用が疑われる場合のリスクを抑えることが可能になる。
【0078】
また、本実施形態では、決済サーバ10の生成部103は、鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成する。このとき、複数の異なる時刻情報として、更に、決済要求の受信時刻から所定の時間間隔で連続する所定数の未来の時刻情報を算出し、決済要求の受信時刻に対応する時刻情報、所定数の過去の時刻情報及び所定数の未来の時刻情報に基づいて複数の認証情報を生成するようにしてもよい。
【0079】
例えば、
図9のステップS202の処理手順で説明したように、所定の時間単位が1分であり、所定の時間間隔が1分であり、所定数が2つであり、決済要求を受信した受信時刻が10時10分30秒であると仮定する。この場合、生成部103は、10時10分、10時9分及び10時8分に対応する3つの認証情報を生成するとともに、更に、10時11分及び10時12分に対応する認証情報を生成するようにしてもよい。また、決済処理部104は、生成したこれらの複数の認証情報の中に、決済要求から取得した認証情報が含まれるか否かを判断するようにしてもよい。これにより、例えばユーザ端末30の時計が現在より進んでいるといった場合であっても、決済処理を行うことが可能になるため、ユーザの利便性を向上させることが可能になる。
<付記>
本実施形態は、以下の通り表現されてもよい。
[付記1]
ユーザが利用するユーザ端末へ鍵情報を送信する送信部と、
店舗端末から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信する受信部と、
前記鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成する生成部と、
前記複数の認証情報と前記店舗端末から受信した認証情報との照合結果を用いて、前記ユーザに対する決済処理を行う決済処理部と、を有する、
決済サーバ。
[付記2]
前記受信部は、前記店舗端末がオフライン状態の前記ユーザ端末から取得した前記認証情報と前記ユーザ識別子とを示す複数桁の文字列、を含む前記決済要求を、前記店舗端末から受信する、
付記1に記載の決済サーバ。
[付記3]
前記送信部は、前記決済処理を行った後、前記ユーザ端末がオンライン状態であることを検出した場合に、前記ユーザ端末に対し、前記決済処理の結果を送信する、
付記1又は2に記載の決済サーバ。
[付記4]
前記受信部は、複数の店舗端末の各々から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信し、
前記受信部が前記複数の店舗端末の各々から受信する認証情報は、同一の前記鍵情報に基づいて生成される、
付記1~3のいずれか一項に記載の決済サーバ。
[付記5]
前記受信部は、前記店舗端末から、前記認証情報と前記ユーザ識別子とを示す複数桁の文字列を含む前記決済要求を受信し、
前記複数桁の文字列は、前記店舗端末で、前記ユーザ端末の画面に表示されたバーコードから読み取られた文字列である、
付記1~4のいずれか一項に記載の決済サーバ。
[付記6]
前記バーコードには、前記ユーザ端末がオフライン状態であることを示す識別情報が埋め込まれており、
前記受信部は、前記店舗端末から、前記認証情報と前記ユーザ識別子と前記識別情報とを示す前記複数桁の文字列、を含む前記決済要求を受信する、
付記5に記載の決済サーバ。
[付記7]
前記決済要求は、決済金額を含み、
前記決済処理部は、前記決済金額が、前記ユーザの決済上限金額を超える場合、前記決済処理を行わない、
付記1~6のいずれか一項に記載の決済サーバ。
[付記8]
前記決済要求は、決済金額を含み、
前記決済処理部は、前記鍵情報を前記ユーザ端末に送信したタイミングから前記決済要求を受信したタイミングまでの時間が長いほど、前記ユーザの決済上限金額を下げる、
付記1~7のいずれか一項に記載の決済サーバ。
[付記9]
前記決済処理部は、前記店舗端末から受信する決済要求の不正リスク度合いに基づいて、前記ユーザの決済上限金額を変更する、
付記1~8のいずれか一項に記載の決済サーバ。
[付記10]
前記決済処理部は、前記店舗端末から前記決済要求を受信した日時と前記店舗端末の位置情報とに基づいて前記不正リスク度合いを評価する、
付記9に記載の決済サーバ。
[付記11]
前記生成部は、前記複数の異なる時刻情報として、前記決済要求を受信した受信時刻から所定の時間間隔で所定数の過去の時刻情報を算出し、前記受信時刻に対応する時刻情報及び前記所定数の過去の時刻情報に基づいて前記複数の認証情報を生成する、
付記1~10のいずれか一項に記載の決済サーバ。
[付記12]
前記生成部は、前記複数の異なる時刻情報として、更に、前記受信時刻から所定の時間間隔で所定数の未来の時刻情報を算出し、前記受信時刻に対応する時刻情報、前記所定数の過去の時刻情報及び前記所定数の未来の時刻情報に基づいて前記複数の認証情報を生成する、
付記11に記載の決済サーバ。
[付記13]
前記決済処理部は、前記複数の認証情報の中に、前記店舗端末から受信した認証情報が含まれる場合に、前記決済処理を行う、
付記1~12のいずれか一項に記載の決済サーバ。
[付記14]
前記認証情報は、非可逆性を有し、
前記複数の認証情報の各々は、非可逆性を有する、
付記1~13のいずれか一項に記載の決済サーバ。
[付記15]
決済サーバが行う決済方法であって、
ユーザが利用するユーザ端末へ鍵情報を送信するステップと、
店舗端末から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信するステップと、
前記鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成するステップと、
前記複数の認証情報と前記店舗端末から受信した認証情報との照合結果を用いて、前記ユーザに対する決済処理を行うステップと、を含む、
決済方法。
[付記16]
コンピュータに、
ユーザが利用するユーザ端末へ鍵情報を送信するステップと、
店舗端末から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信するステップと、
前記鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成するステップと、
前記複数の認証情報と前記店舗端末から受信した認証情報との照合結果を用いて、前記ユーザに対する決済処理を行うステップと、
を実行させるためのプログラム。
[付記17]
コンピュータに、
決済サーバから鍵情報を受信するステップと、
前記鍵情報及び時刻情報に基づいて認証情報を生成するステップと、
前記コンピュータがオフライン状態である場合に、前記認証情報とユーザ識別子と前記コンピュータがオフライン状態であることを示す識別情報とが埋め込まれたバーコードを表示させるステップと、を実行させる、
プログラム。
【符号の説明】
【0080】
1…決済システム、10…決済サーバ、11…プロセッサ、12…記憶装置、13…通信IF、14…入力デバイス、15…出力デバイス、20…店舗端末、30…ユーザ端末、100…記憶部、100a…鍵管理DB、100b…決済DB、101…送信部、102…受信部、103…生成部、104…決済処理部、200…記憶部、200a…店舗ID情報、201…送信部、202…受信部、203…読取部、204…表示制御部、300…記憶部、300a…鍵情報、300b…ユーザID情報、301…送信部、302…受信部、303…生成部、304…表示制御部
【要約】
【課題】コード決済時のセキュリティを向上させること。
【解決手段】ユーザが利用するユーザ端末へ鍵情報を送信する送信部と、店舗端末から、前記鍵情報及び所定の時刻情報に基づいて生成された認証情報と前記ユーザのユーザ識別子とを含む決済要求を受信する受信部と、前記鍵情報及び複数の異なる時刻情報に基づいて複数の認証情報を生成する生成部と、前記複数の認証情報と前記店舗端末から受信した認証情報との照合結果を用いて、前記ユーザに対する決済処理を行う決済処理部と、を有する決済サーバを提供する。
【選択図】
図3