(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0019】
以下、図面を参照して本発明を実施するための形態について説明する。なお、実施形態の構成は例示であり、本発明は実施形態に示す構成に限定されない。
【0020】
<システム構成>
図1は、実施形態に係るシステム全体の一例を示す図である。本システムは、ユーザ端末1と、決済サーバ2と、決済端末3とを含み、これらがネットワーク4を解して接続されている。ユーザ端末1を所持するユーザは、商品やサービスの対価を支払う際に、決済端末3が設置された店舗や公共交通機関等において本実施形態に係る決済システムを利用することができる。なお、ネットワーク4は、インターネット等の通信網であり、ネットワーク4に接続されたコンピュータは様々なプロトコルに基づいて相互に通信できるものとする。また、ユーザ端末1と決済端末3とは、例えばBluetooth(登録商標)等の無線
通信技術を利用し、直接通信を行うことができる。
【0021】
ユーザ端末1は、スマートフォンやタブレット、PC(Personal Computer)等の一般
的なコンピュータであり、本実施形態に係るプログラム(ソフトウェア、又はアプリケーションとも呼ぶ)を実行することにより、システム全体で電子決済処理を行う。ユーザ端末1は、例えば移動体通信網等を利用して決済サーバ2と通信を行うとともに、電波の到達範囲に存在する決済端末3と直接無線通信を行う。なお、ユーザ端末1は、ネットワーク4に複数接続されていてもよい。
【0022】
決済サーバ2は、一般的なコンピュータであり、本実施形態に係るプログラムを実行することにより、システム全体で電子決済処理を行う。決済サーバ2は、インターネット等の通信網を介してユーザ端末1及び決済端末3と通信を行う。決済サーバ2は、1台であってもよいし、複数の決済サーバ2が後述する処理を分担したり、又は並列に処理を実行する構成であってもよい。
【0023】
決済端末3は、例えばマイクロコントローラを内蔵した電子決済処理を行う装置である。決済端末3は、電波到達範囲に存在するユーザ端末1との間で無線通信を行うと共に、有線又は無線により接続されるインターネット等の通信網を介して決済サーバ2と通信を行い、システム全体で電子決済処理を行う。決済端末3も、ネットワーク4に複数接続されていてもよい。
【0024】
ユーザ端末1と決済サーバ2とは、ワンタイムパスワードを利用して決済サーバ2との間で認証処理を行う。ワンタイムパスワードは、例えばチャレンジレスポンス方式を採用することができる。また、ユーザ端末1は、決済端末3を介して決済サーバ2による認証を受け、決済端末3は認証されたユーザを特定できるようになっている。
【0025】
<装置構成>
図2は、ユーザ端末1、決済サーバ2及び決済端末3の構成の一例を示すブロック図である。
【0026】
ユーザ端末1は、入出力インターフェース(I/F)11と、記憶装置12と、第1の通信インターフェース(I/F)131と、第2の通信I/F132と、プロセッサ14と、バス15とを備えている。入出力I/F11は、例えばタッチパネル等のユーザインターフェースである。記憶装置12は、RAM(Random Access Memory)やROM(Read
Only Memory)等の主記憶装置及びHDD(Hard-disk Drive)やSSD(Solid State Drive)、フラッシュメモリ等の補助記憶装置(二次記憶装置)である。主記憶装置は、プロセッサが読み出したプログラムを一時的に記憶したり、プロセッサの作業領域を確保したりする。補助記憶装置は、プロセッサが実行するプログラムや、決済サーバ2と共有する疑似乱数を生成するためのシード等を記憶する。第1の通信I/F131は、例えば携帯電話の基地局や無線LAN(Local Area Network)のアクセスポイントと通信を行う通信モジュールであり、所定のプロトコルに基づき通信を行う。また、第2の通信I/F132は、電波が直接到達する範囲内において端末間通信を行う所定の規格の通信モジュールであり、例えばBluetooth等の規格に基づいて通信を行う。プロセッサ14は、CPU
(Central Processing Unit)等の演算処理装置であり、プログラムを実行することによ
り本実施の形態に係る各処理を行う。
図2の例では、プロセッサ14内に機能ブロックを示している。具体的には、プロセッサ14は、決済要求部141及び送信制御部142として機能する。決済要求部141は、決済サーバ2からチャレンジを取得すると共に、取得したチャレンジ及び疑似乱数を生成するための予め定められたシードを用いて所定の計算方法に基づいてハッシュ値を算出する。また、送信制御部142は、ハッシュ値を複数回に分けて決済端末3に送信する。以上のような構成要素が、バス15を介して接続されている。
【0027】
また、決済サーバ2は、入出力I/F21と、記憶装置22と、通信I/F23と、プロセッサ24と、バス25とを備えている。入出力I/F21は、例えばキーボードやマウス、ディスプレイ等のユーザインターフェースである。記憶装置22は、RAMやROM等の主記憶装置及びHDDやSSD、フラッシュメモリ等の補助記憶装置である。主記憶装置は、プロセッサが読み出したプログラムを一時的に記憶したり、プロセッサの作業領域を確保したりする。補助記憶装置は、プロセッサが実行するプログラムや、予めユーザが利用者登録を行うことで記憶されるユーザの情報、ユーザ端末1と共有する疑似乱数
を生成するためのシード等を記憶する。通信I/F23は、例えば有線のネットワークカード等であり、所定のプロトコルに基づき通信を行う。プロセッサ24は、CPU等の演算処理装置であり、プログラムを実行することにより本実施形態に係る各処理を行う。
図2に示すように、プロセッサ24は、チャレンジ処理部241及び認証処理部242として機能する。チャレンジ処理部241は、ユーザ端末1からいわゆるチャレンジレスポンス方式におけるチャレンジの要求を受けた場合、例えばランダム等、所定の生成方法によりチャレンジを生成する。また、認証処理部242は、チャレンジ処理部241が生成したチャレンジ及び予め定められたシードを用いて、所定の一方向関数に基づくハッシュ値を算出する。なお、ハッシュ値は、チャレンジを送信したユーザ端末1のユーザを識別するための情報と関連付けて記憶装置22に記憶される。また、認証処理部242は、決済端末3からハッシュ値を含む利用者の問合せを受けた場合は、一致するハッシュ値が記憶装置22に記憶されているか否かにより認証を行い、一致するハッシュ値が存在するときは、当該ハッシュ値に関連付けられたユーザの識別情報に基づいてユーザを特定し、特定されたユーザの情報を決済端末3に送信する。以上のような構成要素が、バス25を介して接続されている。
【0028】
また、決済端末3は、入出力I/F31と、記憶装置32と、第1の通信I/F331と、第2の通信I/F332と、プロセッサ34と、信号線35とを備えている。入出力I/F31は、液晶ディスプレイ、LED(Light Emitting Diode)、スピーカ等であり、ユーザに対し決済が完了したことを例えば表示や光、音等によって通知する。記憶装置22は、いわゆるマイクロコントローラの記憶領域であるメモリ等である。記憶装置22は、プロセッサが実行するプログラムを記憶したり、ユーザ端末1や決済サーバ2と送受信するデータを一次的に記憶したりする。第1の通信I/F331は、例えば携帯電話の基地局や無線LAN(Local Area Network)のアクセスポイントと通信を行う通信モジュールであり、所定のプロトコルに基づき通信を行う。また、第2の通信I/F332は、電波が直接到達する範囲内において端末間通信を行う所定の規格の通信モジュールであり、例えばBluetooth等の規格に基づいて通信を行う。プロセッサ34は、マイクロコント
ローラ等の演算処理装置であり、プログラムを実行することにより本実施形態に係る各処理を行う。
図2に示すように、プロセッサ34は、レスポンス処理部341及び決済処理部342として機能する。レスポンス処理部341は、ユーザ端末1から複数回に分けてハッシュ値を受信し、決済サーバ2に対しレスポンスを送信する。また、決済処理部342は、決済サーバ2によって認証されたユーザ端末1の利用者に対し、入出力I/F31を介して決済の完了を通知する。以上のような構成要素が、信号線35を介して接続されている。
【0029】
<決済処理>
図3は、本システムにおいて実行される決済処理の一例を示す処理フロー図である。本システムは、何らかの商品やサービスの対価を支払う際に利用される。本実施形態では、バス等の交通機関において運賃を支払うものとして説明する。なお、ユーザ端末1を所持するユーザは、予め決済サーバ2に対し、ネットワーク4を介して利用者登録を行っているものとする。利用者登録においては、ユーザ端末1を特定するための識別情報が、ユーザの情報と関連付けて登録される。
【0030】
図4は、利用者登録によって予め決済サーバ2の記憶装置22に記憶される情報の一例を示す図である。
図4は、テーブルの属性を示しており、「利用者ID」と、「利用者情報」と、「BD(Bluetooth Device)アドレス」と、「シード」とを含む。「利用者ID」のフィールドには、本実施携帯に係るシステムを利用する利用者を特定するための識別情報が登録される。「利用者情報」のフィールドには、利用者に関する情報であり、例えば利用者の氏名、支払いに用いるクレジットカードの情報等の個人情報を含む。「BDアドレス」のフィールドには、ユーザ端末1を特定するための情報の一例であり、Bluetoot
h規格に従って通信を行う装置の識別情報であるBDアドレス(パブリックアドレス)が
登録される。BDアドレスは、1つの利用者IDに対して複数登録できるようにしてもよい。なお、BDアドレスに代えて、またはBDアドレスに加えて、例えばBluetoothのS
DP(Service Discovery Protocol)におけるUUID等を記憶するようにしてもよい。また、「シード」のフィールドには、所定の一方向関数によってハッシュ値を算出する際に用いるシードが登録される。なお、同一のシードが、ユーザ端末1の記憶装置12にも予め記憶されているものとする。
【0031】
ユーザ端末1の決済要求部141は、決済処理を開始すると、まず第1の通信I/F131及びネットワーク4を介して決済サーバ2へチャレンジの送信を要求する(
図3:S1)。一方、決済サーバ2の通信I/F23は、ネットワーク4を介してチャレンジの要求を受信した場合、決済サーバ2のチャレンジ処理部241は、チャレンジを生成する(
図3:S2)。チャレンジは、例えばランダムに生成される所定のサイズの文字列である。なお、チャレンジの生成に、上述したシードやUUIDを利用してもよい。
【0032】
そして、チャレンジ処理部241は、通信I/F23及びネットワーク4を介して生成したチャレンジをユーザ端末1へ送信する(
図3:S3)。一方、ユーザ端末1の第1の通信I/F131は、チャレンジを受信すると、記憶装置12に保持させる(
図3:S4)。
【0033】
そして、ユーザ端末1の決済要求部141は、受信したチャレンジを用いてハッシュ値を算出する(
図3:S5)。ハッシュ値は、所定の一方向関数を用いて算出される。例えば、MD5やSHA2等を用いることができる。なお、これらの一方向関数を繰り返し適用したものであってもよい。また、ハッシュ値は、チャレンジに加えてBDアドレスや決済サーバ2とユーザ端末1とが共有するシードを用いて算出するようにしてもよい。
【0034】
図5は、算出されるハッシュ値を説明するための模式的な図である。本実施形態では、
図5に示すように、例えばBDアドレス、チャレンジ及びシードを連結した文字列から、所定のハッシュ関数によってハッシュ値を算出するものとする。
【0035】
一方、決済サーバ2の認証処理部242も、ユーザ端末1からは独立してS5と同様のハッシュ値を算出する(
図3:S6)。すなわち、S4の後、決済処理部342は、チャレンジを送信したユーザ端末1のBDアドレス、送信したチャレンジ、及び当該ユーザ端末1と共有しているシードを用いて、所定のハッシュ関数に基づくハッシュ値を算出する。算出されたキャッシュ値は、例えばユーザIDと関連付けて記憶装置32に格納される。
【0036】
図6は、決済サーバ2の記憶装置22に一時的に記憶される情報の一例を示す図である。
図6は、テーブルの属性を表しており、「利用者ID」と、「ハッシュ値」とを含む。「利用者ID」のフィールドには、ユーザを特定するための識別情報が登録される。なお、利用者IDを介して、
図4に示したテーブルのレコードと情報を紐付けることができる。「ハッシュ値」のフィールドには、算出されたハッシュ値が記憶される。決済サーバ2においては、
図6に示すような情報を所定期間だけ一時的に保持するものとする。
【0037】
また、ユーザ端末1の送信制御部142は、S5において算出されたハッシュ値の一部を決済端末3に送信する(
図3:S7)。本ステップでは、ユーザ端末1と決済端末3とは直接無線通信を行う。通信方式は特に限定されないが、例えばBluetoothや、Wi-Fi(登録商標)、その他の端末間通信等を利用することができる。本実施形態では、Bluetooth
により通信を行うものとする。また、本ステップでは、MD5チェックサム等のようなハッシュ値の前半がBluetoothのアドバタイジング(Advertising)でブロードキャストされ
る。アドバタイジングであれば、ペアリング等を行うことなく決済端末3との間で通信を行うことができる。また、本ステップではハッシュ値の一部のみを送信するため、第三者にパケットを受信されたとしてもハッシュ値の全体はわからない。ハッシュ関数によってはアドバタイジングのペイロードに格納しきれないことがあり、また、さらに利用者情報等のようなその他の情報を追加して送信する場合にはペイロードには収まらない場合もあり得るところ、ハッシュ値を分割して送信することによりハッシュ値の全体を送信できるようになる。
【0038】
図7は、Bluetoothパケットの構成を示す図である。Bluetoothパケットは、プリアンブル(Preamble:例えば1オクテット)と、アクセスアドレス(Access Address:例えば4オクテット)と、PDU(Protocol Data Unit:例えば2〜38オクテット)と、CRC(Cyclic Redundancy Check:例えば3オクテット)とを含む。
【0039】
図8は、Bluetoothのアドバタイジング(Advertising)のPDUの構成を示す図である。アドバタイジングのパケットは、ヘッダ(Header:例えば16ビット)と、ペイロード(Payload:例えば0〜37オクテット)とを含む。ペイロードは、パケットの送信元の
アドレス(AdvA)6オクテットと、データ(AdvData)0〜31オクテットとを含む。送
信元のアドレスは、例えばBDアドレスであり、パブリックアドレスであるかランダムアドレスであるかを示すフラグを含むものであってもよい。また、ペイロードに、S5で算出されたハッシュ値の例えば前半が格納される。なお、ハッシュ値の前半であるか後半であるかを示すフラグがさらに格納されるようにしてもよい。また、
図7に示したアクセスアドレスには、アドバタイジング(ブロードキャスト)であることを示すアドレスが登録され、パケットは決済端末3からの電波が到達する範囲内に存在するBluetooth機器に受
信され得る。
【0040】
一方、決済端末3の第2の通信I/F332がハッシュの一部を受信すると、決済端末3のレスポンス処理部341は、受信したハッシュを記憶装置32に保持させる(
図3:S8)。そして、レスポンス処理部341は、ユーザ端末1に対しハッシュの残部を要求する(
図3:S9)。Bluetoothにより通信を行う場合、本ステップでは例えばスキャン
リクエスト(Scan Request)を利用して要求を送信することができる。
【0041】
図9は、スキャンリクエストのPDUの構成を示す図である。スキャンリクエストのパケットは、パケットの送信元のアドレス(ScanA:例えば6オクテット)と、宛先のアド
レス(AdvA)6オクテットとを含む。また、スキャンリクエストの場合は、
図7に示したアクセスアドレスには、上述したアドバタイジングの送信元であるユーザ端末1のアドレスが登録され、スキャンリクエストは決済端末3とユーザ端末1との間の通信となる。
【0042】
一方、ユーザ端末1の第2の通信I/F132は、ハッシュ値の残部の要求を受信すると(
図3:S10)、
図10の処理フロー図に遷移し、ハッシュ値の残部を送信する(
図10:S11)。
図10は、決済処理の一例を示す処理フロー図である。Bluetoothによ
り通信を行う場合、本ステップでは例えばスキャンリクエストに対する応答であるスキャンレスポンス(Scan Response)を利用してハッシュ値の後半を送信する。
【0043】
図11は、スキャンレスポンスのPDUの構成を示す図である。スキャンレスポンスは、パケットの送信元のアドレス(AdvA:例えば6オクテット)と、レスポンスデータ(Scan Response Data)0〜31オクテットとを含む。そして、レスポンスデータに、ハッシュ値の後半を格納することができる。なお、
図7に示したアクセスアドレスには、上述したスキャンリクエストの送信元のアドレスが登録され、決済端末3に受信される。
【0044】
また、決済端末3の第2の通信I/F332は、スキャンレスポンスを受信すると(図
10:S12)、決済端末3の決済処理部342は、ユーザ端末1から分割して受信したデータを結合してハッシュ値を復元し、第1の通信I/F331及びネットワーク4を介して決済サーバ2に対し決済処理を要求する(
図10:S13)。本ステップでは、決済処理部342は、S8及びS12において受信したハッシュ値の前半及び後半を結合し、例えばインターネットを介して決済サーバ2に決済処理を要求する。
【0045】
一方、決済サーバ2の通信I/F23は、決済処理の要求を受信した場合(
図10:S14)、決済サーバ2の認証処理部242は、受信したハッシュ値に関連付けられている利用者IDに対する決済処理を行う(
図10:S15)。本ステップでは、認証処理部242は、受信したハッシュ値が
図6に示したテーブルに保持されているか検索する。そして、ハッシュ値がテーブルに格納されている場合は、見つかったハッシュ値に関連付けられている利用者IDに対し、決済処理を行う。具体的には、
図4に示したテーブルから、同一の利用者IDに対応付けて保持されている利用者情報を抽出し、例えばクレジットカードに対する請求情報を作成する。ここで、請求する金額は、本実施形態のようにバス等の交通機関において運賃を支払う場合は、定額であってもよいし、決済端末3から乗車区間に応じた金額の情報を取得するようにしてもよい。なお、S14において受信したハッシュ値が記憶装置22に保持されていない場合は、決済処理は行われない。
【0046】
その後、認証処理部242は、処理結果を示す情報を、通信I/F23及びネットワーク4を介して決済端末3へ送信する(
図10:S16)。本ステップでは、例えば利用者情報を含む決済が完了した旨の情報が送信される。利用者情報は、例えば
図4に示したテーブルから抽出された利用者の氏名等である。なお、S14において受信したハッシュ値が記憶装置22に保持されていなかった場合は、決済処理が実行できなかったことを示す情報が送信される。
【0047】
一方、決済端末3の第1の通信I/F331は、処理結果を示す情報を受信し(
図10:S17)、例えば入出力I/F31を介して処理結果を出力する。本ステップでは、液晶ディスプレイに利用者の氏名及び決済金額を表示させるようにしてもよいし、LEDの点灯や音声の出力によって決済が完了したことを通知してもよい。なお、決済サーバ2から決済処理が実行できなかったことを示す情報を受信した場合は、決済端末3は、入出力I/F31を介して決済処理が実行できなかったことを示す情報を出力する。
【0048】
また、
図3のS6において決済サーバ2が算出したハッシュ値は、例えば所定時間経過後に削除され、その後は決済処理が行われないようにする。同様に、ユーザ端末1においても、所定期間経過後または決済サーバ2から所定のRemote Push Notificationを受信した場合に、
図3のS6において算出したハッシュ値を削除するものとする。
【0049】
<効果>
本実施形態によれば、ユーザは事前に利用者登録を行うだけで、ユーザ端末1と決済端末3との間ではペアリング等の通信設定を行う必要なく、決済処理を実行することができる。また、チャレンジレスポンス方式のようなワンタイムパスワードを利用するとともに、ハッシュ値を分割し、少なくとも一部はブロードキャストせずユーザ端末1と決済端末3との間の通信によって受け渡すようにすることで、盗聴に対する安全性を向上させている。なお、ユーザ端末1と決済端末3との間の端末間通信における電波到達範囲を、例えば対面での支払いに適した距離に制限することにより、消費電力を低減させるだけでなく、パケットの盗聴に対する安全性を向上させることができる。同時に、Bluetoothのアド
バタイジングによってハッシュ値を送信する場合はペイロードの容量が足りない場合があるところ、分割して送信することによりハッシュ値をすべて送信できるようにもなる。以上のように、本実施形態によれば、利用するための準備にかかる手間を低減しつつ、セキュアな決済サービスを提供することができる。
【0050】
<変形例1>
上述した実施形態ではBluetoothを利用して近距離の端末間通信を行ったが、Bluetooth以外の規格を利用することもできる。例えば、Wi-Fi等の規格を利用するようにしてもよ
い。Wi-Fiを利用する場合は、例えば
図3のS7においてユーザ端末1は、SSIDのブ
ロードキャストを利用して決済端末3へハッシュ値の前半を送信するようにしてもよい。そして、S9において決済端末3は、Wi-Fiを利用した本変形例に係る独自のプロトコル
に基づいてハッシュ値の後半をユーザ端末1へ要求し、
図10のS11においてユーザ端末1は、Wi-Fiを利用した本変形例に係る独自のプロトコルに基づいてハッシュ値の後半
を決済端末3へ送信するようにしてもよい。また、S9において決済端末3は、インターネット回線を利用した本変形例に係る独自のプロトコルに基づいてハッシュ値の後半をユーザ端末1へ要求し、
図10のS11においてユーザ端末1は、インターネット回線を利用した本変形例に係る独自のプロトコルに基づいてハッシュ値の後半を決済端末3へ送信するようにしてもよい。このようにすれば、いわゆるアクセスポイントへの接続設定を行うことなくユーザ端末1と決済端末3との間で近距離の端末間通信又はネットワーク4を介した通信を行うことができ、決済システムを利用するための手間が少なくなる。同様に、無線LANのアドホック通信、その他の端末間通信を利用するようにしてもよい。
【0051】
また、上述した実施形態では、チャレンジレスポンス方式を利用して認証を行ったが、その他のワンタイムパスワードを利用するようにしてもよい。例えば時刻同期方式(タイムスタンプ方式)を利用することもできる。この場合、
図3のS1〜S4においてチャレンジを送受信する代わりに所定のタイミングの時刻に基づいてパスワード(上述した実施形態におけるハッシュ値に相当)をユーザ端末1及び決済サーバ2の各々が生成し、上述した実施形態と同様に認証を行うことができる。
【0052】
また、認証処理に関して、上述した実施形態におけるユーザ端末1及び決済端末3の役割を逆にしてもよい。すなわち、
図3のS4においては決済端末3が決済サーバ2からチャレンジを受信し、S5においては決済端末3が予め保持しているBDアドレスやシードと併せてハッシュ値の算出に用いる。そして、
図3のS7〜
図10のS12においては決済端末3からハッシュ値を分割してユーザ端末1へ送信し、S13においてはユーザ端末1から決済サーバ2へ結合したハッシュ値を送信する。この場合、
図10のS15においては、決済サーバ2はハッシュ値からユーザ端末1を所持する利用者を特定できないため、例えばユーザ端末1は決済サーバ2へ、決済端末利用者を特定するための利用者ID等を別途送信するものとする。このようにしても、認証処理に基づく決済を行うことができる。
【0053】
また、ハッシュ値を算出するための一方向関数はMD5に限定されず、SHA−2等、その他のハッシュ関数を利用するようにしてもよい。
【0054】
また、
図10のS15において、ユーザや金額といった決済の内容をいったんユーザに確認させるようにしてもよい。すなわち、決済サーバ2の認証処理部242は、氏名等の利用者情報や請求金額といった決済の内容を決済端末3へ送信し、決済端末3は入出力I/F31に決済の内容を表示させる。そして、ユーザ端末1を所持するユーザ又は決済端末3の使用者の操作により決済の内容を確認した旨の入力を受けた場合、決済端末3から決済サーバ2へ通知を行い、決済サーバ2において決済処理が実行されるようにしてもよい。
【0055】
<変形例2>
上述した決済サーバ2は、決済に限らず認証処理を行う認証システムとして提供することもできる。すなわち、
図3及び
図10に示した決済処理のうちS13〜S17において
認証処理を行う。例えば、S13においては、決済端末3(「認証端末」とも呼ぶ)の決済処理部342(「認証処理部」とも呼ぶ)は、認証処理を要求する。
【0056】
また、S14において、決済サーバ2(「認証サーバ」とも呼ぶ)の認証処理部242が要求を受信すると、S15において、利用者IDに対する認証処理を行う。認証処理においては、例えばレスポンスに含まれるハッシュ値と、認証サーバの認証処理部242が算出したハッシュ値とが一致する場合に、ユーザ端末1が正当な権限のあるユーザの端末であるものと判断する。
【0057】
また、S16において、認証処理部242は、処理結果を示す情報を、通信I/F23及びネットワーク4を介して認証端末へ送信する。本ステップでは、例えば認証された旨の情報が送信される。なお、S14において受信したハッシュ値が記憶装置22に保持されていなかった場合は、認証されなかったことを示す情報が送信される。
【0058】
一方、S17において、認証端末の第1の通信I/F331は、処理結果を示す情報を受信する。なお、認証された場合には、例えば図示していないゲートを開閉するような処理を行うようにしてもよいし、ユーザの存在を記録する処理を行うようにしてもよい。本変形例によっても、利用するための準備にかかる手間を低減しつつ、セキュアな認証サービスを提供することができる。また、Bluetooth等の無線通信の電波到達範囲を適切に設
定することにより、ユーザは、ユーザ端末1を認証端末にかざすことなく、例えば鞄にユーザ端末1を入れたまま認証端末とすれ違うだけで認証処理を行うことができるようになる。
【0059】
具体的には、認証システムは、建物のエントランスや部屋ごとに設けられる一般的な入退室管理システムに用いることもできるし、他の場面に応用することもできる。例えば、対象者となる地域の住民が無料で乗車できるコミュニティバスのような交通機関において、認証処理を行うようにしてもよい。すなわち、上述したユーザ端末1を対象者である住民が所持し、認証端末(決済端末3)をバスの乗降口付近に設ける。
【0060】
そして、ユーザ端末1又は認証端末のいずれかと、前記認証サーバとが、それぞれ同一の規則に基づいてワンタイムパスワードを生成する。また、上述したユーザ端末1又は認証端末のいずれか一方の端末は他方の端末へ、生成したワンタイムパスワードを分割して送信し、他方の端末は、受信したワンタイムパスワードを結合して認証サーバ(決済サーバ2)へ送信する。認証サーバは、自身が生成したワンタイムパスワードと、受信したワンタイムパスワードとを用いて認証を行う。認証サーバにおいて認証に成功した場合、認証端末は認証サーバからその旨の通知を受け、例えば認証結果を表す音声や光、画面への表示等による出力を行う。
【0061】
このような処理は、例えばBluetoothの電波到達範囲を適切に設定することにより、ユ
ーザがユーザ端末1を認証端末にかざすような動作を行うことなく実行できる。すなわち、ユーザはユーザ端末1を鞄等から取り出すことなく、有料道路の自動料金収受システムのように、認証端末の近傍を通行するだけで認証処理を受けることができる。このような認証システムは、何らかの施設へ入場するための入館証や何らかの会場へ入場するためのチケット等に適用することもできる。
【0062】
また、認証システムは、何らかの契約者や会員を対象として行うサービスや、自治体が住民を対象として行う行政サービス等において、相手認証(本人認証)を行うために用いることもできる。例えば、上述したユーザ端末1を認証を受けるユーザが所持し、認証端末(決済端末3)を何らかのサービスの窓口に設ける。
【0063】
そして、ユーザ端末1又は認証端末のいずれかと、前記認証サーバとが、それぞれ同一の規則に基づいてワンタイムパスワードを生成する。また、上述したユーザ端末1又は認証端末のいずれか一方の端末は他方の端末へ、生成したワンタイムパスワードを分割して送信し、他方の端末は、受信したワンタイムパスワードを結合して認証サーバ(決済サーバ2)へ送信する。認証サーバは、自身が生成したワンタイムパスワードと、受信したワンタイムパスワードとを用いて認証を行う。認証サーバにおいて認証に成功した場合、認証端末は認証サーバからその旨の通知を受け、例えば認証結果を表す音声や光、画面への表示等による出力を行う。
【0064】
以上のような認証処理を、例えば契約書や会員証、身分証等の確認に代えて行うことで、サービス窓口における作業の手間を削減することができる。また、例えば認証サーバは、認証が成功した場合に、いわゆるポイントプログラム(ポイントサービス)におけるポイントをユーザの識別情報に紐付けて付与するような処理をさらに行うようにしてもよい。
【0065】
<その他>
本発明は上述の処理を実行するコンピュータプログラムを含む。さらに、当該プログラムを記録した、コンピュータ読み取り可能な記録媒体も、本発明の範疇に属する。当該プログラムが記録された記録媒体については、コンピュータに、この記録媒体のプログラムを読み込ませて実行させることにより、上述の処理が可能となる。
【0066】
ここで、コンピュータ読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータから読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータから取り外し可能なものとしては、フレキシブルディスク、光磁気ディスク、光ディスク、磁気テープ、メモリカード等がある。また、コンピュータに固定された記録媒体としては、ハードディスクドライブやROM等がある。