2007年07月23日

お財布携帯のセキュリティ関連特許!(No1)

ひらめき お財布携帯関連の要素技術の特許権を取得しました!


【発明の名称】識別情報発行システム、装置及び方法、プログラム、並びに記録媒体

【出願日】2002年10月30日


【出願番号】特願2002-316523

 

【公開番号】特許公開2004-171039

【特許登録日】2006年6月30日

【発明者】本田 季伸

【要約】
サーバーに電子チケット発行情報を残さず個人認証を実現。
電子チケット発行・認証システム。

 電子チケット発行時にサーバーからチケットデータを破棄しても認証が可能。電子チケット発行・認証におけるセキュリティの強化と認証処理速度が向上。

 従来までの携帯電話による電子チケット発行・認証システムでは実現できなかった、サーバー側のセキュリティを強化し、電子チケットの発行・認証処理速度が向上するハッシュ法を用いた認証システム。

 従来行われていた携帯電話による認証では、発行された電子チケット情報をサーバー側に保管し、認証時にリーダーから読取られた電子チケット情報をサーバー側に格納された電子チケット情報と照合し、認証を行っていました。そのため、電子チケットの発行数が増加した場合、記憶容量の増大と認証処理速度の低下が問題となっておりました。また、発行された電子チケット情報をサーバー側に保有しているため、サーバーの情報が漏洩した場合は全ての認証情報が漏洩する問題を抱えていました。

 この発行・認証システムを利用すれば、他社の携帯電話と二次元コードによる個人認証の特許(ジェネス社)のライセンス料を支払う必要がありません。ジェネス社の特許技術を完全に回避することができますので、より安価な導入と運用が可能になります。

本特許技術は、電子チケット情報を複数のハッシュテーブルでアドレッシングする事で、本来照合されるはずの電子チケット情報をサーバー側に保有する事無く、認証を行う事が可能になります。この技術により、従来までは電子チケット発行数が増加すると共に増加していた記憶容量が、電子チケット発行情報を破棄する事で記憶容量が少ないサーバーでも運用が可能になります。また、ハッシュアルゴリズムを用いて認証を行いますので検索効率の向上が期待できます。さらに、認証データをサーバー側に保有していないため、サーバー内の情報が漏洩したとしても、なんら意味をもたない情報しか漏洩する事がないため、セキュリティに関しても安全に運用が可能です。

 また、本特許技術は認証インターフェイスが二次元コード、赤外線通信、ブルートゥース、携帯内IC(フェリカ)等でも利用が可能です。

“ハッシュ法を用いた識別情報発行・認証システム”の概要

(1)記憶容量の縮小
 電子チケット発行時に認証に用いる識別情報を破棄する事で、データ処理能力が低いサーバーでも運用が可能になります。

(2)認証処理スピードの向上
 電子チケット情報を、ハッシュテーブルを用いてアドレッシングする事で、検索効率を向上できます。

(3)発行認証情報の安全な運用
 電子チケット発行情報をサーバー側に保有しないため、サーバー内の情報が漏洩したとしても何ら意味のない情報しか保存していないため重要な情報を盗み出される事がなくなります。

【可能性】
 本特許技術は、当初、携帯電話と二次元コードを用いた個人認証としての利用を想定しておりましたが、この特許技術は要素技術であるため、バイオメトリクス認証や、ID・パスワードに代わる認証及びトレーサビリティシステム等にも応用が可能で、特許取得項目にも様々な応用例が含まれています。

【特許請求の範囲】
【請求項1】
無線通信端末(13)と、少なくとも無線通信回線(41)を介して前記無線通信端末(13)と通信可能なサーバ装置(11)とを備える識別情報発行システムであって、
前記無線通信端末(13)は、
前記無線通信端末(13)の利用者によって管理される一次識別情報を保持する一次識別情報保持手段(302,303)と、
前記一次識別情報を前記サーバ装置(11)に入力することにより、前記サーバ装置(11)から受信することが可能であって、前記一次識別情報との間に規則性がない二次識別情報を保持する二次識別情報保持手段(303)とを備え、
前記サーバ装置(11)は、
前記一次識別情報保持手段(302,303)に保持された一次識別情報を入力する第1の入力装置(204)と、前記二次識別情報保持手段に保持された二次識別情報を入力する第2の入力装置(204)とに接続され、
一次識別情報をそれぞれ正当に管理している利用者の無線通信端末(13)の宛先情報を、対応する一次識別情報との関連付けが可能なように記憶する宛先記憶手段(105,107)と、
前記第1の入力装置から前記一次識別情報が入力されることにより、所定の有効期限が付された二次識別情報を発行する二次識別情報発行手段(101,S143,S404)と、
前記二次識別情報発行手段(101,S143,S404)が発行した二次識別情報と、その発行のトリガとなった一次識別情報を正当に管理している利用者とを関連付ける利用者関連付け手段(106,111,112)と、
前記二次識別情報発行手段(101,S143,S404)が発行した二次識別情報を、その発行のトリガとなった一次識別情報に関連付けが可能なように前記宛先記憶手段(105)に記憶されている宛先情報に従って無線通信回線(41)を介して送信し、該発行のトリガとなった一次識別情報を正当に管理している利用者の無線通信端末(13)に保持させる二次識別情報送信手段(104,S146)と、
前記第2の入力装置(204)から入力された二次識別情報が前記利用者関連づけ手段(106,111,112)において利用者と関連付けられているかどうかを判定する関連付け判定手段(101,S150,S505)と、
前記第2の入力装置(204)から入力された二次識別情報が前記所定の有効期限内のものであるかどうかを判定する有効期限判定手段(110,S150)と、
前記関連付け判定手段が利用者との関連付けを判定し、且つ前記有効期限判定手段(110,S150)が有効期限内のものであると判定した場合に、所定の処理を許可する処理許可手段(101,S151)とを備え、
前記第1、第2の入力装置(204)から入力された一次識別情報または二次識別情報は、これらを正当に管理している利用者の無線通信端末(13)に保持されたものであったかどうかを特定不能な態様で入力されている
ことを特徴とする。
【請求項2】
利用者によって管理される一次識別情報と、該一次識別情報の入力によって受信することが可能であって、前記一次識別情報との間に規則性がない二次識別情報とを保持可能な無線通信端末(13)に、少なくとも無線通信回線(41)を介して通信可能な識別情報発行装置(11)であって、
前記無線通信端末(13)に保持された一次、二次識別情報をそれぞれ入力する第1、第2の入力装置(204)にそれぞれ接続され、
一次識別情報をそれぞれ正当に管理している利用者の無線通信端末(13)の宛先情報を、対応する一次識別情報との関連付けが可能なように記憶する宛先記憶手段(105,107)と、
前記第1の入力装置から前記一次識別情報が入力されることにより、所定の有効期限が付された二次識別情報を発行する二次識別情報発行手段(101,S143,S404)と、
前記二次識別情報発行手段(101,S143,S404)が発行した二次識別情報と、その発行のトリガとなった一次識別情報を正当に管理している利用者とを関連付ける利用者関連付け手段(106,111,112)と、
前記二次識別情報発行手段(101,S143,S404)が発行した二次識別情報を、その発行のトリガとなった一次識別情報に関連付けが可能なように前記宛先記憶手段(105)に記憶されている宛先情報に従って無線通信回線(41)を介して送信し、該発行のトリガとなった一次識別情報を正当に管理している利用者の無線通信端末(13)に保持させる二次識別情報送信手段(104,S146)と、
前記第2の入力装置(204)から入力された二次識別情報が前記利用者関連づけ手段(106,111,112)において利用者と関連付けられているかどうかを判定する関連付け判定手段(101,S150,S505)と、
前記第2の入力装置(204)から入力された二次識別情報が前記所定の有効期限内のものであるかどうかを判定する有効期限判定手段(110,S150)と、
前記関連付け判定手段が利用者との関連付けを判定し、且つ前記有効期限判定手段(110,S150)が有効期限内のものであると判定した場合に、所定の処理を許可する処理許可手段(101,S151)とを備え、
前記第1、第2の入力装置(204)から入力された一次識別情報または二次識別情報は、これらを正当に管理している利用者の無線通信端末(13)に保持されたものであったかどうかを特定不能な態様で入力されている
ことを特徴とする。
【請求項3】
請求項2に記載の識別情報発行装置(11)であって、
前記利用者関連付け手段は、前記二次識別情報発行手段が発行した二次識別情報に対応した数値を互いに異なる複数の演算式で演算した演算結果に応じた記憶位置に、対応する識別情報を付与した利用者に関連付けるための関連付け情報を登録する複数のテーブル(111,112)によって構成され、
前記関連付け判定手段は、前記第2の入力装置(204)から入力された二次識別情報が、前記複数のテーブル(111,112)の全てにおいて、前記複数の演算式による各演算結果にそれぞれ対応する記憶位置に、同一の利用者の関連付け情報が共通して登録されているかどうかを判定する手段(101,S505)によって構成される、
ことを特徴とする。
【請求項4】
請求項3に記載の識別情報発行装置(11)であって、
前記複数の演算式は、前記第2の入力装置(204)から入力された二次識別情報に対応した数値を互いに異なる除数で除算した剰余を求める式であり、
前記互いに異なる除数の最小公倍数は、二次識別情報に対応した数値がとり得る値の最大値と最小値との差よりも大きい
ことを特徴とする。
【請求項5】
請求項3に記載の識別情報発行装置(11)であって、
前記二次識別情報発行手段(101,S404)が発行した二次識別情報を、前記二次識別情報送信手段による送信が完了した時点で破棄する破棄手段(101,S414)をさらに備える
ことを特徴とする。
【請求項6】
請求項2に記載の識別情報発行装置(11)であって、
前記二次識別情報発行手段(101,S143,S404)が発行した二次識別情報に、予め用意された複数種類の電子透かしのうちのいずれかの種類の電子透かしを埋め込む透かし付加手段(101,S603)と、
前記二次識別情報発行手段(101,S143,S404)が発行した二次識別情報と、前記透かし付加手段(101,S603)によって付加された種類の電子透かしとを関連付ける透かし関連付け手段(108)と、
前記第2の入力装置(204)から入力された二次識別情報に埋め込まれている電子透かしの種類を解析する透かし解析手段(101,S611)と、
前記透かし解析手段(101,S611)が解析した電子透かしの種類が、前記透かし関連付け手段において当該二次識別情報を関連付けられているかどうかを判定する透かし判定手段(101,S612)とをさらに備え、
前記処理許可手段(101,S151)は、さらに前記透かし判定手段(101,S612)が電子透かしの関連付けを判定した場合に、前記所定の処理を許可する
ことを特徴とする。
【請求項7】
請求項2に記載の識別情報発行装置(11)であって、
前記第1の入力装置(204)から入力された一次識別情報を正当に管理している利用者の属性が所定の属性であるかどうかを判定する属性判定手段(101,S202,S203,S403)をさらに備え、
前記所定の属性に対応した者にのみ販売可能な物品を販売し、前記第2の入力装置(204)に接続された自動販売機(12)に接続され、
前記処理許可手段は、物品の販売を許可することを、前記二次識別情報を入力した第2の入力装置に接続された自動販売機(12)に通知するものである
ことを特徴とする。
【請求項8】
請求項7に記載の識別情報発行装置(11)であって、
前記二次識別情報発行手段(101,S143)が発行した二次識別情報を、前記一次識別情報を入力した第1の入力装置(204)に接続された自動販売機(12)に固有の復号鍵に対応した暗号鍵を用いて暗号化し、前記二次識別情報送信手段(104,S146)に送信させる二次識別情報暗号化手段(101,S145)と、
前記第2の入力装置(204)から二次識別情報が入力されたときに、前記第2の入力装置(204)に接続された自動販売機(12)に固有の復号鍵を用いて、該入力された二次識別情報を復号化する二次識別情報復号化手段(101,S149)とをさらに備える
ことを特徴とする。
【請求項9】
請求項2に記載の識別情報発行装置(11)であって、
前記無線通信端末(13)は、前記一次識別情報および二次識別情報をそれぞれ表示する表示装置(305)を備え、
前記第1、第2の入力装置(204)は、それぞれ前記表示装置(305)に表示された一次識別情報または二次識別情報を読み取る装置によって構成される
ことを特徴とする。
【請求項10】
請求項9に記載の識別情報発行装置(11)であって、
前記無線通信端末(13)毎に、前記一次識別情報に関連付けて、少なくとも前記表示装置(305)に関する情報を含む機種情報を記憶した機種情報記憶手段(109)をさらに備え、
前記二次識別情報発行手段(101,S143,S404)は、発行のトリガとなった一次識別情報に関連付けて前記機種情報記憶手段(109)に記憶されている機種情報に従って前記二次識別情報を発行する
ことを特徴とする。
【請求項11】
請求項2に記載の識別情報発行装置(11)であって、
前記無線通信端末(13)は、携帯電話機である
ことを特徴とする。
【請求項12】
利用者によって管理される一次識別情報と、該一次識別情報の入力に従って発行される二次識別情報とを保持可能な無線通信端末(13)に、少なくとも無線通信回線(41)を介して通信可能な識別情報発行装置(11)であって、
プログラムを含むデータを記憶するメモリ(102)と、前記メモリに記憶されたプログラムを実行するプロセッサ(101)と、前記プロセッサ(101)による制御に従って前記無線通信端末(13)と情報を送受信する通信装置(104)とを備えると共に、前記無線通信端末(13)に保持された一次、二次識別情報をそれぞれ入力する第1、第2の入力装置(204)にそれぞれ接続され、
前記メモリ(102)は、
一次識別情報をそれぞれ正当に管理している利用者の無線通信端末(13)の宛先情報を、対応する一次識別情報との関連付けが可能なように記憶する宛先記憶手段(105,107)と、
前記二次識別情報発行手段が発行した二次識別情報と、その発行のトリガとなった一次識別情報を正当に管理している利用者とを関連付ける利用者関連付け手段(106,111,112)とを含み、
前記プログラムは、
前記第1の入力装置(204)から前記一次識別情報が入力されることにより、入力された一次識別情報との間に規則性がなく、所定の有効期限が付された二次識別情報を発行する第1の処理(S143,S404)と、
前記第1の処理(S143,S404)により発行した二次識別情報を、その発行のトリガとなった一次識別情報に関連付けが可能なように前記宛先記憶手段(105,107)に記憶されている宛先情報に従って無線通信回線(41)を介して送信し、該発行のトリガとなった一次識別情報を正当に管理している利用者の無線通信端末(13)に保持させる第2の処理(S146)と、
前記第2の入力装置(204)から入力された二次識別情報が前記利用者関連づけ手段(106,111,112)において利用者と関連付けられているかどうかを判定する第3の処理(S150,S505)と、
前記第2の入力装置(204)から入力された二次識別情報が前記所定の有効期限内のものであるかどうかを判定する第4の処理(S150)と、
前記第3の処理(S150,S505)により利用者との関連付けを判定し、且つ前記第4の処理(S150)により有効期限内のものであると判定した場合に、所定の処理を許可する第5の処理(S151)とを含み、
前記第1、第2の入力装置(204)から入力された一次識別情報または二次識別情報は、これらを正当に管理している利用者の無線通信端末(13)に保持されたものであったかどうかを特定不能な態様で入力されている
ことを特徴とする。
【請求項13】
識別情報発行方法であって、
無線通信端末(13)内に保持されて利用者によって管理されている一次識別情報を、第1の入力装置(204)からコンピュータ装置(11)に入力し、
前記一次識別情報の入力により、前記コンピュータ装置(11)が前記一次識別情報との間に規則性がなく、所定の有効期限が付された二次識別情報を発行し、
前記発行した二次識別情報を、その発行のトリガとなった一次識別情報を正当に管理している利用者とを関連付け、
前記発行した二次識別情報を、その発行のトリガとなった一次識別情報に関連付けが可能なように予め前記コンピュータ装置(11)内に記憶されている宛先情報に従って、前記コンピュータ装置(11)から無線通信回線(41)を介して送信することで、該発行のトリガとなった一次識別情報を正当に管理している利用者の無線通信端末(13)に保持させ、
前記送信された二次識別情報を受信した無線通信端末(13)において保持された二次識別情報を第2の入力装置(204)から前記コンピュータ装置(11)に入力し、
入力された二次識別情報が前記コンピュータ装置(11)において利用者と関連付けられており、且つ有効期限内のものである場合に、前記コンピュータ装置(11)が所定の処理を行うことを許可し、
前記第1、第2の入力装置(204)から入力された一次識別情報または二次識別情報は、これらを正当に管理している利用者の無線通信端末(13)に保持されたものであったかどうかを特定不能な態様で入力されている
ことを特徴とする。
【請求項14】
利用者によって管理される一次識別情報と、該一次識別情報の入力によって受信することが可能であって、前記一次識別情報との間に規則性がない二次識別情報とを保持可能な無線通信端末(13)に、少なくとも無線通信回線(41)を介して通信可能であって、前記無線通信端末(13)に保持された一次、二次識別情報をそれぞれ入力する第1、第2の入力装置(204)にそれぞれ接続されたコンピュータ装置(11)において実行されるプログラムであって、
一次識別情報をそれぞれ正当に管理している利用者の無線通信端末(13)の宛先情報を、対応する一次識別情報との関連付けが可能なように記憶する宛先記憶手段(105,107)と、
前記第1の入力装置から前記一次識別情報が入力されることにより、所定の有効期限が付された二次識別情報を発行する二次識別情報発行手段(101,S143)と、
前記二次識別情報発行手段が発行した二次識別情報と、その発行のトリガとなった一次識別情報を正当に管理している利用者とを関連付ける利用者関連付け手段(106,111,112)と、
前記二次識別情報発行手段(101,S143)が発行した二次識別情報を、その発行のトリガとなった一次識別情報に関連付けが可能なように前記宛先記憶手段(105)に記憶されている宛先情報に従って無線通信回線(41)を介して送信し、該発行のトリガとなった一次識別情報を正当に管理している利用者の無線通信端末(13)に保持させる二次識別情報送信手段(104,S146)と、
前記第2の入力装置(204)から入力された二次識別情報が前記利用者関連づけ手段(106,111,112)において利用者と関連付けられているかどうかを判定する関連付け判定手段と、
前記第2の入力装置(204)から入力された二次識別情報が前記所定の有効期限内のものであるかどうかを判定する有効期限判定手段(110,S150)と、
前記関連付け判定手段が利用者との関連付けを判定し、且つ前記有効期限判定手段(110,S150)が有効期限内のものであると判定した場合に、所定の処理を許可する処理許可手段(101,S151)とを備え、
前記第1、第2の入力装置(204)から入力された一次識別情報または二次識別情報は、これらを正当に管理している利用者の無線通信端末(13)に保持されたものであったかどうかを特定不能な態様で入力されている
ことを特徴とする。
【請求項15】
利用者によって管理される一次識別情報と、該一次識別情報の入力によって受信することが可能であって、前記一次識別情報との間に規則性がない二次識別情報とを保持可能な無線通信端末(13)に、少なくとも無線通信回線(41)を介して通信可能であって、前記無線通信端末(13)に保持された一次、二次識別情報をそれぞれ入力する第1、第2の入力装置(204)にそれぞれ接続されたコンピュータ装置(11)において実行されるプログラムを記録したコンピュータ読み取り可能な記録媒体(55)であって、
一次識別情報をそれぞれ正当に管理している利用者の無線通信端末(13)の宛先情報を、対応する一次識別情報との関連付けが可能なように記憶する宛先記憶手段(105,107)と、
前記第1の入力装置から前記一次識別情報が入力されることにより、所定の有効期限が付された二次識別情報を発行する二次識別情報発行手段(101,S143)と、
前記二次識別情報発行手段が発行した二次識別情報と、その発行のトリガとなった一次識別情報を正当に管理している利用者とを関連付ける利用者関連付け手段(106,111,112)と、
前記二次識別情報発行手段(101,S143)が発行した二次識別情報を、その発行のトリガとなった一次識別情報に関連付けが可能なように前記宛先記憶手段(105)に記憶されている宛先情報に従って無線通信回線(41)を介して送信し、該発行のトリガとなった一次識別情報を正当に管理している利用者の無線通信端末(13)に保持させる二次識別情報送信手段(104,S146)と、
前記第2の入力装置(204)から入力された二次識別情報が前記利用者関連づけ手段(106,111,112)において利用者と関連付けられているかどうかを判定する関連付け判定手段と、
前記第2の入力装置(204)から入力された二次識別情報が前記所定の有効期限内のものであるかどうかを判定する有効期限判定手段(110,S150)と、
前記関連付け判定手段が利用者との関連付けを判定し、且つ前記有効期限判定手段(110,S150)が有効期限内のものであると判定した場合に、所定の処理を許可する処理許可手段(101,S151,)とを備え、
前記第1、第2の入力装置(204)から入力された一次識別情報または二次識別情報は、これらを正当に管理している利用者の無線通信端末(13)に保持されたものであったかどうかを特定不能な態様で入力されている
ことを特徴とする。

2007年07月23日

お財布携帯のセキュリティ関連特許!(No2)

【発明の詳細な説明】
【0001】
技術分野
本発明は、不正に取得された識別情報に基づいて不正な行為が行われることを防ぐための技術に関する。
【0002】
背景技術
市場で取り引きされている商品の中には、酒、たばこなどのように購入できる者の年齢が制限されている商品がある。このような年齢制限された商品がいつでも自由に自動販売機で購入できるようにすると、便利ではあるが、未成年者の飲酒、喫煙を招くおそれがある。そこで、身分証明書に記載された個人識別情報を自動販売機に読み取らせ、販売可能な年齢の者であったなら、商品を販売するようにするシステムが研究されている。
【0003】
コンサートやスポーツなどのイベントのチケット、特に有名歌手のコンサートやサッカーのワールドカップのような人気イベントのチケットは、一般に、入手が困難である。チケットは、一般にイベントの日時や座席番号などの他に発行者側が割り振った識別情報が記載されている。この識別情報によって、正規のチケットであるかどうかが見分けられる。
【0004】
しかしながら、上記いずれの方法においても、識別情報が一旦発行されて利用者の手に渡ると、その識別情報は、利用者の側で長期間に亘って管理されることとなる。このため、識別情報が偽造されるという危険に常にさらされることとなる。
【0005】
従来より、印刷媒体であれば透かしやホログラムを付けたり、電子データであれば記録媒体をICカードにしたりと、様々な方法で偽造防止が図られてきた。しかしながら、従来のいずれの偽造防止技術を適用した場合であっても、サービスの提供を受けるために必要となる識別情報が利用者の側で長期間に亘って管理されるものとなっていたため、識別情報が偽造され、不正な行為が行われることの危険を十分に小さくすることはできなかった。
【0006】
このような識別情報を使ってサービスを受けるためには、通常、その識別情報により個人認証がなされることとなる。従来は、この個人認証を行うために、利用者に発行したのと実質的に同じ識別情報を、各利用者の個人情報と対応付けてサービス提供者(発行者)の側のサーバ装置などに保管しておかなければならなかった。しかしながら、サーバ装置がハッカーに侵入された場合、保管している各利用者の識別情報が不正に盗み出されてしまう場合がある。つまり、利用者が識別情報の管理責任を怠らなかったとしても、その識別情報が不正に使用されてしまうという危険があった。
【0007】
発明の開示
本発明は、利用者によって管理されている識別情報が偽造されたとしても、その偽造された識別情報に基づいて不正な行為が行われることを防ぐことができる識別情報発行システム等を提供することを目的とする。
【0008】
本発明は、また、利用者に発行した識別情報が発行者側から盗み出されて不正に使用されることがない識別情報発行システム等を提供することを目的とする。
【0009】
上記目的を達成するため、本発明の第1の観点にかかる識別情報発行システムは、
無線通信端末と、少なくとも無線通信回線を介して前記無線通信端末と通信可能なサーバ装置とを備え、
前記無線通信端末は、
前記無線通信端末の利用者によって管理される一次識別情報を保持する一次識別情報保持手段と、
前記一次識別情報を前記サーバ装置に入力することにより、前記サーバ装置から受信することが可能であって、前記一次識別情報との間に規則性がない二次識別情報を保持する二次識別情報保持手段とを備え、
前記サーバ装置は、
前記一次識別情報保持手段に保持された一次識別情報を入力する第1の入力装置と、前記二次識別情報保持手段に保持された二次識別情報を入力する第2の入力装置とに接続され、
一次識別情報をそれぞれ正当に管理している利用者の無線通信端末の宛先情報を、対応する一次識別情報との関連付けが可能なように記憶する宛先記憶手段と、
前記第1の入力装置から前記一次識別情報が入力されることにより、所定の有効期限が付された二次識別情報を発行する二次識別情報発行手段と、
前記二次識別情報発行手段が発行した二次識別情報と、その発行のトリガとなった一次識別情報を正当に管理している利用者とを関連付ける利用者関連付け手段と、
前記二次識別情報発行手段が発行した二次識別情報を、その発行のトリガとなった一次識別情報に関連付けが可能なように前記宛先記憶手段に記憶されている宛先情報に従って無線通信回線を介して送信し、該発行のトリガとなった一次識別情報を正当に管理している利用者の無線通信端末に保持させる二次識別情報送信手段と、
前記第2の入力装置から入力された二次識別情報が前記利用者関連づけ手段において利用者と関連付けられているかどうかを判定する関連付け判定手段と、
前記第2の入力装置から入力された二次識別情報が前記所定の有効期限内のものであるかどうかを判定する有効期限判定手段と、
前記関連付け判定手段が利用者との関連付けを判定し、且つ前記有効期限判定手段が有効期限内のものであると判定した場合に、所定の処理を許可する処理許可手段とを備え、
前記第1、第2の入力装置から入力された一次識別情報または二次識別情報は、これらを正当に管理している利用者の無線通信端末に保持されたものであったかどうかを特定不能な態様で入力されている
ことを特徴とする。
【0010】
上記識別情報発行システムでは、サーバ装置が所定の処理を行うことを許可するためには、第2の入力装置からサーバ装置に二次識別情報が入力されなければならない。二次識別情報は、一次識別情報を第1の入力装置から入力することでサーバ装置から無線端末装置に送られるものであるが、一次識別情報と対応付けて記憶された宛先情報に従って送信されるので、偽造した一次識別情報を入力した者の無線通信端末が二次識別情報を受信することはない。二次識別情報は、一次識別情報と違って必要に応じて発行されるものであり、しかも所定の有効期限が付されている。一次識別情報との間に規則性がない二次識別情報を、有効期限内で偽造するのはほとんど不可能に近い。このため、利用者によって管理されている一次識別情報が偽造されたとしても、当該偽造された一次識別情報に基づいて所定の処理が不正に許可されてしまうのを防ぐことができる。
【0011】
上記目的を達成するため、本発明の第2の観点にかかる識別情報発行装置は、
利用者によって管理される一次識別情報と、該一次識別情報の入力によって受信することが可能であって、前記一次識別情報との間に規則性がない二次識別情報とを保持可能な無線通信端末に、少なくとも無線通信回線を介して通信可能であって、
前記無線通信端末に保持された一次、二次識別情報をそれぞれ入力する第1、第2の入力装置にそれぞれ接続され、
一次識別情報をそれぞれ正当に管理している利用者の無線通信端末の宛先情報を、対応する一次識別情報との関連付けが可能なように記憶する宛先記憶手段と、
前記第1の入力装置から前記一次識別情報が入力されることにより、所定の有効期限が付された二次識別情報を発行する二次識別情報発行手段と、
前記二次識別情報発行手段が発行した二次識別情報と、その発行のトリガとなった一次識別情報を正当に管理している利用者とを関連付ける利用者関連付け手段と、
前記二次識別情報発行手段が発行した二次識別情報を、その発行のトリガとなった一次識別情報に関連付けが可能なように前記宛先記憶手段に記憶されている宛先情報に従って無線通信回線を介して送信し、該発行のトリガとなった一次識別情報を正当に管理している利用者の無線通信端末に保持させる二次識別情報送信手段と、
前記第2の入力装置から入力された二次識別情報が前記利用者関連づけ手段において利用者と関連付けられているかどうかを判定する関連付け判定手段と、
前記第2の入力装置から入力された二次識別情報が前記所定の有効期限内のものであるかどうかを判定する有効期限判定手段と、
前記関連付け判定手段が利用者との関連付けを判定し、且つ前記有効期限判定手段が有効期限内のものであると判定した場合に、所定の処理を許可する処理許可手段とを備え、
前記第1、第2の入力装置から入力された一次識別情報または二次識別情報は、これらを正当に管理している利用者の無線通信端末に保持されたものであったかどうかを特定不能な態様で入力されている
ことを特徴とする。
【0012】
上記第2の観点にかかる識別情報発行装置は、所定の処理を行うことを許可するためには、第2の入力装置から二次識別情報が入力されなければならない。二次識別情報は、一次識別情報を第1の入力装置から入力することで無線端末装置に送られるものであるが、一次識別情報と対応付けて記憶された宛先情報に従って送信されるので、偽造した一次識別情報を入力した者の無線通信端末が二次識別情報を受信することはない。二次識別情報は、一次識別情報と違って必要に応じて発行されるものであり、しかも所定の有効期限が付されている。一次識別情報との間に規則性がない二次識別情報を、有効期限内で偽造するのはほとんど不可能に近い。このため、利用者によって管理されている一次識別情報が偽造されたとしても、当該偽造された一次識別情報に基づいて所定の処理が不正に許可されてしまうのを防ぐことができる。
【0013】
上記第2の観点にかかる識別情報発行装置において、
前記利用者関連付け手段は、前記二次識別情報発行手段が発行した二次識別情報に対応した数値を互いに異なる複数の演算式で演算した演算結果に応じた記憶位置に、対応する識別情報を付与した利用者に関連付けるための関連付け情報を登録する複数のテーブルによって構成され、
前記関連付け判定手段は、前記第2の入力装置から入力された二次識別情報が、前記複数のテーブルの全てにおいて、前記複数の演算式による各演算結果にそれぞれ対応する記憶位置に、同一の利用者の関連付け情報が共通して登録されているかどうかを判定する手段によって構成されたものとすることができる。
【0014】
この場合において、
前記複数の演算式は、例えば、前記第2の入力装置から入力された二次識別情報に対応した数値を互いに異なる除数で除算した剰余を求める式とすることができ、
前記互いに異なる除数の最小公倍数は、二次識別情報に対応した数値がとり得る値の最大値と最小値との差よりも大きいことを条件とすることができる。
【0015】
上記第2の観点にかかる識別情報発行装置は、
前記二次識別情報発行手段が発行した二次識別情報を、前記二次識別情報送信手段による送信が完了した時点で破棄する破棄手段をさらに備えるものとすることができる。
【0016】
上記のように利用者関連付け手段及び関連付け判定手段を構成した場合には、発行した二次識別情報が破棄手段によって破棄されていても、第2の入力装置から入力された二次識別情報と利用者との対応付けが可能となる。つまり、発行した二次識別情報を識別情報発行装置内に残していないため、利用者に付与した二次識別情報が発行者側から盗み出されることがない。このため、利用者が自己の二次識別情報の管理責任を果たしている限り、二次識別情報の不正な使用がされることがない。
【0017】
上記第2の観点にかかる識別情報発行装置は、
前記二次識別情報発行手段が発行した二次識別情報に、予め用意された複数種類の電子透かしのうちのいずれかの種類の電子透かしを埋め込む透かし付加手段と、
前記二次識別情報発行手段が発行した二次識別情報と、前記透かし付加手段によって付加された種類の電子透かしとを関連付ける透かし関連付け手段と、
前記第2の入力装置から入力された二次識別情報に埋め込まれている電子透かしの種類を解析する透かし解析手段と、
前記透かし解析手段が解析した電子透かしの種類が、前記透かし関連付け手段において当該二次識別情報を関連付けられているかどうかを判定する透かし判定手段とをさらに備えるものとすることができ、
前記処理許可手段は、さらに前記透かし判定手段が電子透かしの関連付けを判定した場合に、前記所定の処理を許可するものとすることができる。
【0018】
二次識別情報に埋め込まれた電子透かしの種類までを解析するのはさらに困難であり、有効期限内で二次識別情報が偽造されるのは、さらに不可能に近いものとなる。
【0019】
上記第2の観点にかかる識別情報発行装置は、
前記第1の入力装置から入力された一次識別情報を正当に管理している利用者の属性が所定の属性であるかどうかを判定する属性判定手段をさらに備えていてもよく、
前記所定の属性に対応した者にのみ販売可能な物品を販売し、前記第2の入力装置に接続された自動販売機に接続され、
前記処理許可手段は、物品の販売を許可することを、前記二次識別情報を入力した第2の入力装置に接続された自動販売機に通知するものとすることができる。
【0020】
酒やタバコのような商品を24時間販売可能とする自動販売機でも、利用者の属性が条件を満たさなければ商品を販売することがない。これにより、青少年保護などの目的を達成することができる。
【0021】
上記第2の観点にかかる識別情報発行装置は、自動販売機に接続されている場合において、
前記二次識別情報発行手段が発行した二次識別情報を、前記一次識別情報を入力した第1の入力装置に接続された自動販売機に固有の復号鍵に対応した暗号鍵を用いて暗号化し、前記二次識別情報送信手段に送信させる二次識別情報暗号化手段と、
前記第2の入力装置から二次識別情報が入力されたときに、前記第2の入力装置に接続された自動販売機に固有の復号鍵を用いて、該入力された二次識別情報を復号化する二次識別情報復号化手段とをさらに備えるものとしてもよい。
【0022】
この場合、一次識別情報を入力した第1の入力装置に接続された自動販売機以外の自動販売機は、第2の入力装置から二次識別情報が入力されたとしても商品の販売を行うことがない。仮に他人による一次識別情報の偽造によって二次識別情報を無線通信端末が受信しても、その無線通信端末の利用者は、偽造した一次識別情報を入力したのがどの自動販売機であるかを知る術がない。このため、利用者が意図せずに送られてきた二次識別情報を用いて、商品を不正に購入することがない。
【0023】
上記第2の観点にかかる識別情報発行装置において、
前記無線通信端末は、前記一次識別情報および二次識別情報をそれぞれ表示する表示装置を備えていてもよい。この場合、
前記第1、第2の入力装置は、それぞれ前記表示装置に表示された一次識別情報または二次識別情報を読み取る装置によって構成されるものとすることができる。
【0024】
ここで、第2の観点にかかる識別情報発行装置は、前記無線通信端末毎に、前記一次識別情報に関連付けて、少なくとも前記表示装置に関する情報を含む機種情報を記憶した機種情報記憶手段をさらに備えるものとすることができ、
前記二次識別情報発行手段は、発行のトリガとなった一次識別情報に関連付けて前記機種情報記憶手段に記憶されている機種情報に従って前記二次識別情報を発行するものとすることができる。
【0025】
前記無線通信端末は、例えば、携帯電話機とすることができる。
【0026】
無線通信端末の機種情報に従って二次識別情報を発行するものとすることで、無線通信端末では、その表示装置の機能を最大限に生かして、二次識別情報を表示させることができる。この構成は、携帯電話機のように無線通信端末の機種を利用者が頻繁に変える場合に特に有効に作用する。
【0027】
上記目的を達成するため、本発明の第3の観点にかかる識別情報発行装置は、利用者によって管理される一次識別情報と、該一次識別情報の入力に従って発行される二次識別情報とを保持可能な無線通信端末に、少なくとも無線通信回線を介して通信可能であって、
プログラムを含むデータを記憶するメモリと、前記メモリに記憶されたプログラムを実行するプロセッサと、前記プロセッサによる制御に従って前記無線通信端末と情報を送受信する通信装置とを備えると共に、前記無線通信端末に保持された一次、二次識別情報をそれぞれ入力する第1、第2の入力装置にそれぞれ接続され、
前記メモリは、
一次識別情報をそれぞれ正当に管理している利用者の無線通信端末の宛先情報を、対応する一次識別情報との関連付けが可能なように記憶する宛先記憶手段と、
前記二次識別情報発行手段が発行した二次識別情報と、その発行のトリガとなった一次識別情報を正当に管理している利用者とを関連付ける利用者関連付け手段とを含み、
前記プログラムは、
前記第1の入力装置から前記一次識別情報が入力されることにより、入力された一次識別情報との間に規則性がなく、所定の有効期限が付された二次識別情報を発行する第1の処理と、
前記第1の処理により発行した二次識別情報を、その発行のトリガとなった一次識別情報に関連付けが可能なように前記宛先記憶手段に記憶されている宛先情報に従って無線通信回線を介して送信し、該発行のトリガとなった一次識別情報を正当に管理している利用者の無線通信端末に保持させる第2の処理と、
前記第2の入力装置から入力された二次識別情報が前記利用者関連づけ手段において利用者と関連付けられているかどうかを判定する第3の処理と、
前記第2の入力装置から入力された二次識別情報が前記所定の有効期限内のものであるかどうかを判定する第4の処理と、
前記第3の処理により利用者との関連付けを判定し、且つ前記第4の処理により有効期限内のものであると判定した場合に、所定の処理を許可する第5の処理とを含み、
前記第1、第2の入力装置から入力された一次識別情報または二次識別情報は、これらを正当に管理している利用者の無線通信端末に保持されたものであったかどうかを特定不能な態様で入力されている
ことを特徴とする。
【0028】
上記目的を達成するため、本発明の第4の観点にかかる識別情報発行方法は、無線通信端末内に保持されて利用者によって管理されている一次識別情報を、第1の入力装置からコンピュータ装置に入力し、
前記一次識別情報の入力により、前記コンピュータ装置が前記一次識別情報との間に規則性がなく、所定の有効期限が付された二次識別情報を発行し、
前記発行した二次識別情報を、その発行のトリガとなった一次識別情報を正当に管理している利用者とを関連付け、
前記発行した二次識別情報を、その発行のトリガとなった一次識別情報に関連付けが可能なように予め前記コンピュータ装置内に記憶されている宛先情報に従って、前記コンピュータ装置から無線通信回線を介して送信することで、該発行のトリガとなった一次識別情報を正当に管理している利用者の無線通信端末に保持させ、
前記送信された二次識別情報を受信した無線通信端末において保持された二次識別情報を第2の入力装置から前記コンピュータ装置に入力し、
入力された二次識別情報が前記コンピュータ装置において利用者と関連付けられており、且つ有効期限内のものである場合に、前記コンピュータ装置が所定の処理を行うことを許可し、
前記第1、第2の入力装置から入力された一次識別情報または二次識別情報は、これらを正当に管理している利用者の無線通信端末に保持されたものであったかどうかを特定不能な態様で入力されている
ことを特徴とする。
【0029】
上記目的を達成するため、本発明の第5の観点にかかるプログラムは、
利用者によって管理される一次識別情報と、該一次識別情報の入力によって受信することが可能であって、前記一次識別情報との間に規則性がない二次識別情報とを保持可能な無線通信端末に、少なくとも無線通信回線を介して通信可能であって、前記無線通信端末に保持された一次、二次識別情報をそれぞれ入力する第1、第2の入力装置にそれぞれ接続されたコンピュータ装置において実行され、
一次識別情報をそれぞれ正当に管理している利用者の無線通信端末の宛先情報を、対応する一次識別情報との関連付けが可能なように記憶する宛先記憶手段と、
前記第1の入力装置から前記一次識別情報が入力されることにより、所定の有効期限が付された二次識別情報を発行する二次識別情報発行手段と、
前記二次識別情報発行手段が発行した二次識別情報と、その発行のトリガとなった一次識別情報を正当に管理している利用者とを関連付ける利用者関連付け手段と、
前記二次識別情報発行手段が発行した二次識別情報を、その発行のトリガとなった一次識別情報に関連付けが可能なように前記宛先記憶手段に記憶されている宛先情報に従って無線通信回線を介して送信し、該発行のトリガとなった一次識別情報を正当に管理している利用者の無線通信端末に保持させる二次識別情報送信手段と、
前記第2の入力装置から入力された二次識別情報が前記利用者関連づけ手段において利用者と関連付けられているかどうかを判定する関連付け判定手段と、
前記第2の入力装置から入力された二次識別情報が前記所定の有効期限内のものであるかどうかを判定する有効期限判定手段と、
前記関連付け判定手段が利用者との関連付けを判定し、且つ前記有効期限判定手段が有効期限内のものであると判定した場合に、所定の処理を許可する処理許可手段とを備え、
前記第1、第2の入力装置から入力された一次識別情報または二次識別情報は、これらを正当に管理している利用者の無線通信端末に保持されたものであったかどうかを特定不能な態様で入力されている
ことを特徴とする。
【0030】
上記第5の観点にかかるプログラムの提供方法としては、CD−ROMやDVD−ROMなどのコンピュータ読み取り可能な記録媒体に格納して配布する方法や、信号化して搬送波に重畳し、サーバシステムからクライアントシステムにダウンロードさせる方法などがある。
【0031】
発明を実施するための最良の形態
以下、添付図面を参照して、本発明の実施の形態について説明する。
【0032】
第1の実施の形態
図1は、この実施の形態に適用される自動販売機システムの構成を示すブロック図である。図示するように、この自動販売機システムは、サーバ装置11と、バーコードリーダ204を有する自動販売機12と、表示装置305を有する携帯電話機13とから構成されている。サーバ装置11と自動販売機12とは、専用線30を介して接続されており、サーバ装置11と携帯電話機13とは、少なくとも携帯電話網41を含むネットワーク40を介して接続される。
【0033】
図2は、サーバ装置11の構成を示すブロック図である。図示するように、サーバ装置11は、CPU(Central Processing Unit)101と、記憶装置102と、第1通信装置103と、第2通信装置104とを備えている。サーバ装置11は、また、一次バーコードデータベース105と、二次バーコードデータベース106とを備えている。一次バーコードデータベース105及び二次バーコードデータベース106は、実際には記憶装置102に格納されている。
【0034】
CPU101は、記憶装置102に記憶されたプログラムを実行し、自動販売機12からの一次バーコードの受信をトリガとして二次バーコードを発行したり、商品販売の許可を通知したりといった処理を行う。記憶装置102は、主記憶装置及び補助記憶装置を含み、CPU101の処理プログラムを記憶すると共に、データの記憶領域として用いられる。第1通信装置103は、専用線30を介して自動販売機12と情報を送受信する。第2通信装置104は、ネットワーク40を介して携帯電話機13と情報を送受信する。
【0035】
一次バーコード及び二次バーコードは、それぞれ図3A、図3Bに示すように、二階調の二次元マトリクスパターンによって構成されている。図3Aに示す一次バーコードは、携帯電話機13毎に予め定められた固有のパターンを有する。図3Bに示す二次バーコードは、一次バーコードを自動販売機13に読み取らせることで、自動販売機12での商品の購入を可能とすべくサーバ装置11が発行する。二次バーコードは、ランダムに発行され、一次バーコードとの間に何らの規則性もないパターンを有する。携帯電話機13が受信する二次バーコードは、一次バーコードを読み取った自動販売機12に固有の暗号鍵によって暗号化されている。
【0036】
一次バーコードデータベース105は、利用者(携帯電話機13の管理者)毎に固有の一次バーコードと、当該利用者の属性に関する情報を登録したデータベースである。一次バーコードデータベース105の各レコードは、図4に示すように、利用者IDと、一次バーコードの画像データと、利用者の属性情報(性別及び年齢)と、利用者のアドレスと、利用者の決済手段に関する情報とを含んでいる。
【0037】
利用者IDは、携帯電話機13の利用者を識別するためのIDである。一次バーコードの画像データは、図3Aに示したパターンを有する画像データである。利用者の属性情報は、自動販売機12で販売する商品を購入することができるかどうかを判別するために用いられる。アドレスは、一次バーコードに対応して二次バーコードを送信すべき携帯電話機13のアドレスである。携帯電話番号で二次バーコードを送信することが可能であれば、携帯電話番号をアドレスの代わりに登録してもよい。決済手段は、自動販売機12で購入した商品の代金を決済するために用いるクレジットカードの番号などを登録したものである。
【0038】
二次バーコードデータベース106は、一次バーコードの入力に従ってランダムに発行される二次バーコードを登録したデータベースである。二次バーコードデータベース106の各レコードは、一次バーコードの入力の度に新たに生成され、図5に示すように、利用者IDと、二次バーコードの画像データと、発行日時と、有効期限と、使用済みフラグとを含んでいる。
【0039】
利用者IDは、携帯電話機13の利用者を識別するためのIDであり、一次バーコードデータベース105を参照する際のキーとなる。二次バーコードの画像データは、図3Bに示したパターンを有する画像データである。発行日時は、二次バーコードが発行された日時である。有効期限は、二次バーコードの発行から所定時間(例えば、10分)後の時間が登録され、当該二次バーコードを使用して利用者が自動販売機12で商品を購入できる期限を示す。使用済みフラグは、当該二次バーコードを使用して自動販売機12で商品が購入された場合にセットされるフラグである。
【0040】
図6は、自動販売機12の構成を示すブロック図である。図示するように、自動販売機12は、バーコードリーダ204の他に、CPU201と、記憶装置202と、通信装置203と、販売部205とを備えている。CPU201及び記憶装置202は、販売部205を制御するCPU及び記憶装置と共通のものであってもよい。
【0041】
CPU201は、記憶装置202に記憶されたプログラムを実行し、読み取った一次バーコード及び二次バーコードに対してサーバ装置11から送られてくる許可通知メッセージ(後述)に従って、販売部205による商品の販売を許可させる。記憶装置202は、主記憶装置及び補助記憶装置を含み、CPU201の処理プログラムを記憶すると共に、データの記憶領域として用いられる。記憶装置202に記憶されるデータとしては、自動販売機12毎に固有のものとして割り当てられた暗号鍵及び復号鍵(対称鍵でも非対称鍵でも可)が含まれている。
【0042】
通信装置203は、専用線30を介してサーバ装置11と情報を送受信する。バーコードリーダ204は、携帯電話機13の表示装置305に表示された一次バーコードまたは二次バーコードを読み取る。読み取られた一次バーコードまたは二次バーコードは、通信装置203からネットワーク40を介してサーバ装置11に送られることで、サーバ装置11に入力される。バーコードリーダ204は、サーバ装置11に間接的に接続されている。販売部205は、基本的には通常の自動販売機と同じ機能を有するものであるが、酒やタバコのように一定の属性を有する者にだけ販売可能な商品を販売するものであってもよく、サーバ装置11から販売許可通知メッセージが送られてきた場合にのみ商品の販売を可能とするものである。
【0043】
図7は、携帯電話機13の構成を示すブロック図である。図示するように、携帯電話機13は、表示装置305の他に、CPU301と、ROM(Read Only Memory)302と、RAM(Random Access Memory)303と、入力装置304と、通信装置306とを備えている。携帯電話機13は、このほかにも通話を行うために必要な構成要素を備えているが、本発明とは直接関係がないため、図7において省略している。
【0044】
CPU301は、ROM302に記憶されたプログラムを実行し、一次バーコード及び二次バーコードを管理する処理を行う。CPU301は、入力装置304からの入力に従って、一次バーコード及び二次バーコードを表示装置305に表示させる。ROM302は、CPU301の処理プログラムを記憶すると共に、携帯電話機13毎に予め定められた一次バーコードの画像データを記憶する。RAM303は、データの記憶領域として用いられるものであり、当該データの中には、二次バーコードの画像データ(但し、暗号化されたもの)も含まれる。
【0045】
入力装置304は、「1」〜「0」までの数字キー、「*」キー、「#」キーなどを含み、利用者の操作によって必要な指示をCPU301に入力する。表示装置305は、液晶表示装置などによって構成され、入力装置304から入力に従って一次バーコードまたは二次バーコードの画像を表示する。通信装置306は、携帯電話網41を含むネットワーク40を介してサーバ装置11と情報を送受信する。
【0046】
以下、この実施の形態にかかる自動販売機システムの動作について説明する。図8A、図8Bは、この実施の形態にかかる自動販売機システムにおいて、利用者が商品を購入するための処理を示すフローチャートである。
【0047】
携帯電話機13の利用者が自動販売機12で販売している商品を購入しようとする場合、携帯電話機13の入力装置304を操作して、ROM302に記憶されている一次バーコードを表示装置305に表示させる(ステップS101)。利用者が表示装置305に表示された一次バーコードの画像を自動販売機12のバーコードリーダ204に近づけると、バーコードリーダ204は、この一次バーコードを読み取る(ステップS121)。
【0048】
この際、自動販売機12では、バーコードリーダ204による一次バーコードの読み取り以外の処理を全く行っていない。一次バーコードが表示されていた携帯電話機13に関しては、自動販売機12に対して何らの情報も入力されることはなく、バーコードリーダ204による一次バーコードの読み取りは、それが正当な利用者の携帯電話機13に保持されていたものかどうかについて、何ら判断材料を与えることがない。
【0049】
自動販売機12のCPU201は、記憶装置202に記憶された固有の暗号鍵を読み出し、この暗号鍵を通信装置203から専用線30を介してサーバ装置11に送信させる(ステップS122)。CPU201は、ステップS121でバーコードリーダ204が読み取った一次バーコードの画像データを、通信装置203から専用線30を介してサーバ装置11に送信させる(ステップS123)。
【0050】
サーバ装置11の第1通信装置103は、ステップS122で送信された暗号鍵を受信して、記憶装置102に一時保存させ(ステップS141)、ステップS122で送信された一次バーコードの画像データを受信して、記憶装置102に一時保存させる(ステップS142)。ここでサーバ装置11が受信する情報としては、バーコードリーダ204で読み取られた一次バーコードの画像データと、自動販売機12に固有の暗号鍵だけである。従って、サーバ装置11では、商品を購入しようとしているのが正当な利用者であるかどうかについて全く分からない。
【0051】
サーバ装置11のCPU101は、詳細を後述する二次バーコード発行処理を行って、二次バーコードを発行する(ステップS143)。二次バーコード発行処理では、後述するように二次バーコードが発行されない場合もあり得るが、以後の説明は二次バーコードが発行されたものとして説明する。二次バーコードが発行されると、CPU101は、二次バーコードデータベース106に新たなレコードを作成し、受信した一次バーコードの画像データに対応付けて一次バーコードデータベース105に登録されている利用者ID、発行した二次バーコードの画像データ、現在の日時、現在の日時から所定期間後の有効期限を対応付けて登録する(ステップS144)。
【0052】
CPU101は、ステップS141で記憶装置102に一時保存した暗号鍵を用いて、発行した二次バーコードの画像データを暗号化する(ステップS145)。CPU101は、この暗号化された二次バーコードの画像データを第2通信装置104から、受信した一次バーコードの画像データに対応付けて一次バーコードデータベース105に登録されているアドレス、すなわち受信した一次バーコードを正当に管理している利用者のアドレスを宛先として、携帯電話網41を含むネットワーク40を介して送信する(ステップS146)。
【0053】
ステップS101で一次バーコードを表示させた携帯電話機13の通信装置306は、一次バーコードが偽造されたものでない正当なものであったならば、ステップS146で送信された二次バーコードの画像データ(暗号化されたもの)を受信して、RAM303に一時保存させる(ステップS102)。携帯電話機13の利用者は、携帯電話機13の入力装置304を操作して、RAM303に記憶されている二次バーコードを表示装置305に表示させる(ステップS103)。利用者が表示装置305に表示された二次バーコードの画像を自動販売機12のバーコードリーダ404に近づけると、バーコードリーダ204は、この暗号化された二次バーコードを読み取る(ステップS124)。
【0054】
自動販売機12のCPU201は、記憶装置202に記憶された固有の復号鍵を読み出し、この復号鍵を通信装置203から専用線30を介してサーバ装置11に送信させる(ステップS125)。CPU201は、ステップS124でバーコードリーダ204が読み取った二次バーコードの画像データを、通信装置203から専用線30を介してサーバ装置11に送信させる(ステップS126)。サーバ装置11の第1通信装置103は、ステップS125で送信された復号鍵を受信して、記憶装置102に一時保存させ(ステップS147)、ステップS126で送信された二次バーコードの画像データ(暗号化されたもの)を受信して、記憶装置102に一時保存させる(ステップS148)。
【0055】
CPU101は、ステップS147で記憶装置102に一時保存した復号鍵を用いて、暗号化された二次バーコードの画像データを復号化する(ステップS149)。CPU101は、復号化された二次バーコードの画像データと同じ二次バーコードの画像データが、二次バーコードデータベース106に登録されているかどうかをチェックする。CPU101は、当該二次バーコードが登録されている場合においてさらに二次バーコードデータベース106を参照して、当該二次バーコードの有効期限を過ぎていないか、或いは使用済みフラグがセットされていないかを判定する(ステップS150)。
【0056】
復号化された二次バーコードの画像データが登録されていて、かつ有効期限を過ぎていなく、使用済みフラグもセットされていない場合には、CPU101は、第1通信装置103から専用線30を介して二次バーコードの画像データを送ってきた自動販売機12に販売許可通知メッセージを送信させる(ステップS151)。自動販売機12の通信装置203が販売許可通知メッセージを受信すると、これをCPU201に渡す(ステップS127)。
【0057】
CPU201は、販売許可通知メッセージを受け取ることによって、販売部205による商品の販売を可能とさせる。販売部205は、利用者の選択に従って商品を販売する(ステップS128)。CPU201は、販売部205が販売した商品の金額に関する情報を、通信装置306から専用線30を介してサーバ装置11に送信させる(ステップS129)。
【0058】
サーバ装置11の第1通信装置103が金額に関する情報を受信すると、これを記憶装置102に一時保存させる(ステップS152)。CPU101は、ステップS150でチェックした二次バーコードの利用者IDをキーとして一次バーコードデータベース105から決済手段に関する情報を読み出し、この決済手段を利用して一時保存した金額の課金処理を行う(ステップS153)。
【0059】
CPU101は、同じように一次バーコードデータベース105からアドレスを読み出し、そのアドレスを宛先として課金処理を行った旨の情報を第2通信装置104から携帯電話網41を含むネットワーク40を介して送信させる(ステップS154)。携帯電話機13の通信装置306が課金処理を行った旨の情報を受信すると(ステップS104)、CPU301は、これを表示装置305に表示させる(ステップS105)。以上で自動販売機12から利用者が商品を購入するために必要な処理が全て終了することとなる。
【0060】
図10は、ステップS143の二次バーコード発行処理を詳細に示すフローチャートである。CPU101は、ステップS142で受信した一次バーコードの画像データと同じ一次バーコードの画像データが、一次バーコードデータベース105に登録されているかどうかを判定する(ステップS201)。受信した一次バーコードの画像データが登録されていなければ、CPU101は、二次バーコードを発行することなく、このフローチャートの処理を終了する。
【0061】
一次バーコードの画像データが登録されていた場合には、CPU101は、当該一次バーコードの画像データに対応付けて一次バーコードデータベース105に登録されている利用者の年齢が、自動販売機12で商品を販売できる年齢条件を満たすかどうかを判定する(ステップS202)。年齢条件を満たさなければ、CPU101は、二次バーコードを発行することなく、このフローチャートの処理を終了する。
【0062】
年齢条件を満たしていた場合には、CPU101は、当該一次バーコードの画像データに対応付けて一次バーコードデータベース105に登録されている利用者の性別が、自動販売機12で商品を販売できる性別条件を満たすかどうかを判定する(ステップS203)。性別条件を満たさなければ、CPU101は、二次バーコードを発行することなく、このフローチャートの処理を終了する。
【0063】
性別条件も満たしていた場合には、CPU101は、当該一次バーコードの画像データに対応付けて一次バーコードデータベース105に登録されている決済手段に関する情報に基づいて、利用者が購入した商品に対して課金することができるかどうかを判定する(ステップS204)。課金することができなければ、二次バーコードを発行することなく、このフローチャートの処理を終了する。
【0064】
課金することができる場合には、CPU101は、ステップS142で受信した一次バーコードとは全く無関係に、ランダムに二次バーコードを生成する(ステップS205)。CPU101は、生成した二次バーコードが、既に二次バーコードデータベース106に登録されているかどうかを判定する(ステップS206)。既に登録されている場合には、ステップS205の処理に戻り、CPU101は、さらに別の二次バーコードを生成する。生成した二次バーコードが登録されていなかった場合には、ステップS205で生成された二次バーコードが利用者に対して発行される二次バーコードとなり、このフローチャートの処理を終了する。
【0065】
ステップS143の二次バーコード発行処理で二次バーコードが発行されなかった場合には、CPU101は、二次バーコードの代わりに、自動販売機12または携帯電話機13に二次バーコードを発行できない旨を示すメッセージを第1通信装置103または第2通信装置104から送信させる。このメッセージが出力されることによって、利用者は、二次バーコードを発行できないことを認識できる。
【0066】
ステップS142で受信した一次バーコードの画像データが偽造されたものであり、偽造された一次バーコードと同じものが一次バーコードデータベース105に登録されていると、二次バーコードが発行される(但し、年齢条件等の他の条件を満たす場合)。しかしながら、発行された二次バーコードは、一次バーコードデータベース105に登録されたアドレスを宛先として送信されるので、一次バーコードをバーコードリーダ204に読み取らせなかった場合であっても、一次バーコードを正当に保持している者の携帯電話機13が受信する。偽造された一次バーコードを保持する者の携帯電話機13に、発行された二次バーコードが届くことはない。
【0067】
ステップS150で二次バーコードデータベース106をチェックした結果、二次バーコードが登録されていなかったか、登録されていても有効期限を過ぎていたり使用済みフラグがセットされていた場合には、CPU101は、販売許可通知メッセージの代わりに、自動販売機12または携帯電話機13に不許可通知メッセージを第1通信装置103または第2通信装置104から送信させる。このメッセージが出力されることによって、利用者は、自動販売機12で商品を購入できないことを認識することができる。
【0068】
表示装置305に表示された二次バーコードを一次バーコードとは異なる自動販売機12のバーコードリーダ204に読み取らせた場合、送られてくる復号鍵が暗号鍵に対応していないので、サーバ装置11のCPU101は、受信した二次バーコードを正しく復号化することができない。このため、ステップS150で二次バーコードデータベース106をチェックした結果として、二次バーコードが登録されていないものと判断される。
【0069】
以上説明したように、この実施の携帯にかかる自動販売機システムでは、自動販売機12で商品を購入できる利用者は、バーコードリーダ204に一次バーコードを読み取らせることによってサーバ装置11から二次バーコードを得た者だけである。サーバ装置11のCPU101は、二次バーコードを発行する際に一次バーコードデータベース105を参照して、商品購入の可能な属性を利用者が有しているかどうかをチェックしている。利用者は、商品購入の可能な属性を有していなければ、二次バーコードを取得できない。このため、酒やたばこなどのような商品を24時間自動販売機12で販売するものとしても、未成年者の飲酒、喫煙といった好ましくない問題を招くことがなく、青少年の保護を図ることができる。
【0070】
一次バーコードは、携帯電話機13内において常に利用者側で管理されているので、偽造の危険がある。しかしながら、利用者が商品を購入するためには、一次バーコードとの間に規則性がない二次バーコードも必要である。利用者は、二次バーコードとしてどのようなものが発行されるかを全く知り得ることができないので、二次バーコードまで偽造される危険は少ない。しかも、二次バーコードには有効期限が付されているため、仮に偽造されてしまったとしても、偽造された二次バーコードが有効期限内のものであって、且つ未使用であるという可能性は限りなく0に近い。このため、二次バーコードまで偽造されるによって商品が不正に購入されることがない。
2007年07月06日

本田季伸の発明で権利化された特許紹介!No3


【0071】
比較的容易に偽造できた一次バーコードが自動販売機12のバーコードリーダ204で読み取られたとしても、これによって発行される二次バーコードは、一次バーコードデータベース105に登録されたアドレスを宛先として送信される。二次バーコードは、一次バーコードを偽造した者の携帯電話機13に届くことはない。このため、仮に一次バーコードが偽造されたとしても、商品が不正に購入されることがない。
【0072】
携帯電話機13が受信した二次バーコードは、自動販売機12から送られた暗号鍵によって暗号化されており、これを復号化する復号鍵を有しているのは、一次バーコードを読み取った自動販売機12しかない。他の自動販売機12で二次バーコードが読み取られても、サーバ装置11は、正しい復号鍵が得られないために、二次バーコードを復号化することができない。他人の一次バーコードの偽造によって送られた二次バーコードを携帯電話機13が受信したとしても、その利用者は、二次バーコードの発行のトリガとなった一次バーコードがどの自動販売機12で読み取られたのかを知る術がない。このため、利用者が意図せずに送られてきた二次バーコードによって、商品が不正に購入されることがない。
【0073】
一次バーコードデータベース105は、利用者の決済手段に関する情報を登録しており、自動販売機12から購入された商品代金を、この決済手段に基づいて課金している。このため、利用者は、一次バーコードを表示可能な携帯電話機13さえ持ち歩いていれば、いつでもキャッシュレスで自動販売機12から商品を購入できる。
【0074】
第2の実施の形態
上記の第1の実施の形態では、各利用者の一次バーコード及び二次バーコードは、それぞれサーバ装置11の一次バーコードデータベース105、二次バーコードデータベース106に画像として記憶されていた。つまり、一次バーコード及び二次バーコードは、利用者の携帯電話機13においてだけでなく、サーバ装置11においても管理されるものとしていた。この実施の形態では、サーバ装置11において一次バーコード及び二次バーコードを管理していなくても、上記の第1の実施の形態と同じサービスを提供できる自動販売機システムについて説明する。
【0075】
図10は、この実施の形態におけるサーバ装置11の構成を示すブロック図である。この実施の形態におけるサーバ装置11は、一次バーコードデータベース105及び二次バーコードデータベース106の代わりに利用者データベース107を備えている。利用者データベース107の詳細は後述するが、一次バーコード及び二次バーコードの画像データは、利用者データベース107を含むサーバ装置11内のどこにも保存されていない。もっとも、サーバ装置11は、自動販売機12から送られてきたバーコードの画像データが、一次バーコードであるか二次バーコードであるかに関してだけは、そのパターンから判断することができるものとする。
【0076】
一次バーコード及び二次バーコードの画像データがサーバ装置11内に保存されていないので、この実施の形態では、バーコードの照合によらないで利用者認証が行われることとなる。図11は、この実施の形態における利用者認証の方法を説明する図である。利用者認証の方法は、一次バーコードと二次バーコードとで異なるところがないので、この図の説明では単に「バーコード」として説明する。この図にある第1テーブル111及び第2テーブル112は、それぞれ記憶装置102の所定の領域に記憶されている。
【0077】
自動販売機12のバーコードリーダ204で読み取られたバーコードの画像データ(図中、実線で示す)を受信すると、サーバ装置11は、これを所定の方法で数値化する。バーコードのパターンが異なれば、数値化された後の値は異なることとなる。バーコードを数値化した値X(以下、バーコード値と呼ぶ)を数値Aで除算した剰余aと数値Bで除算した剰余bとがそれぞれ求められる。数値Aと数値Bとの最小公倍数は、バーコード値がとり得る値の最大値と最小値との差よりも大きいという関係がある。この関係を満たす場合、互いに異なる2つのバーコード値をそれぞれ数値Aで除算した剰余aが一致する場合には、当該2つのバーコード値をそれぞれ数値Bで除算した剰余bが一致することはあり得なくなる。数値Aと数値Bとは互いに素であることが好ましい。
【0078】
剰余aに対応した第1テーブル111内の記憶位置には、利用者データベース107において当該バーコードの利用者情報が記憶された位置を指し示すポインタが記憶されている。剰余bに対応した第2テーブル112内の記憶位置には、利用者データベース107において当該バーコードの利用者情報が記憶された位置を指し示すポインタが記憶されている。自動販売機12から送られてきたバーコードは、第1テーブル111と第2テーブル112の両方から同一の利用者まで辿ることができたので、当該利用者がバーコードの所有者として認証される。
【0079】
剰余aに対応した第1テーブル111内の記憶位置には、利用者データベース107において他のバーコード(図中、破線で示す)の利用者情報が記憶された位置を指し示すポインタも記憶されている。しかし、第2テーブル112からは当該他のバーコードの利用者情報まで辿ることができない。他のバーコードの画像(図中、破線で示す)データをサーバ装置11が受信した場合、そのバーコード値X’を数値Aで除算した剰余a’が剰余aに一致する場合、第1テーブル111からは実線で示したバーコードの利用者情報まで辿ることができる。しかし、バーコード値X’を数値Bで除算した剰余b’が剰余bに一致することはないので、第2テーブル112からは実線で示したバーコードの利用者情報まで辿ることができない。従って、受信したバーコードとは無関係な利用者が誤って認証されることは起こり得ない。
【0080】
次に、利用者データベース107について詳しく説明する。図12は、利用者データベース107の構成を示す図である。利用者データベース107の各レコードは、利用者登録の度に新たに生成され、図示するように、利用者ID、利用者の属性情報(性別及び年齢)、アドレス、決済手段、一次バーコードのバーコード値の剰余a及び剰余b、二次バーコードのバーコード値の剰余a及び剰余b、二次バーコードの発行日時、二次バーコードの有効期限、並びに二次バーコードの使用済みフラグを含んでいる。
【0081】
一次バーコード及び二次バーコードのバーコード値の剰余a及び剰余bは、それぞれ一次バーコード及び二次バーコードに対応する数値を数値A及びBで除算した場合の剰余であり、利用者データベース107から第1テーブル111に辿るために用いられる。その他は、第1の実施の形態のものと同じであるが、二次バーコードの剰余a及び剰余b、発行日時、有効期限並びに使用済みフラグについては、1レコードに1つずつしか利用者データベース107に登録されない。利用者は何度でも二次バーコードの発行を受けることができるが、これらの項目は、新たな二次バーコードが発行される度に更新される。
【0082】
以下、この実施の形態にかかる自動販売機システムにおける処理について説明する。このシステムを利用して自動販売機12で商品を購入しようとする利用者は、予め利用者登録を行って、一次バーコードの発行を受けておかなければならない。図13は、この利用者登録処理を示すフローチャートである。
【0083】
利用者は、例えばサーバ装置11から携帯電話機13に登録用フォームを取得し、入力装置304から年齢、性別及びアドレス、決済手段といった利用者情報を入力し、ネットワーク40を介してサーバ装置11に送信する。サーバ装置11の第2通信装置104は、この利用者情報が含まれる登録用フォームを受信する(ステップS301)。CPU101は、利用者IDを付与すると共に、受信した登録用フォームに記入された利用者情報を利用者データベース107に登録する(ステップS302)。
【0084】
CPU101は、ランダムに一次バーコードの画像パターンを生成する(ステップS303)。CPU101は、生成した一次バーコードの画像パターンを所定の方法で数値化し、数値化したバーコード値を変数Xに代入する(ステップS304)。ここで一次バーコードの画像パターンを数値化する方法としては、同じパターンであれば必ず同じ数値となり、異なるパターンであれば必ず異なる数値となるものであれば、任意の方法を適用することができる。
【0085】
CPU101は、バーコード値Xを数値Aで除算した剰余aを求め(ステップS305(a))、バーコード値Xを数値Bで除算した剰余bを求める(ステップS305(b))。数値Aと数値Bとの最小公倍数は、バーコード値X(後述する二次バーコードに対応するものも含む)がとり得る値の最大値と最小値との差よりも大きい。CPU101は、第1テーブル111のうちの剰余aに対応する記憶位置に登録されているポインタを全て取り出し(ステップS306(a))、第2テーブル112のうちの剰余bに対応する記憶位置に登録されているポインタを全て取り出す(ステップS306(b))。
【0086】
CPU101は、第1テーブル111から取り出したポインタと第2テーブル112から取り出したポインタとを比較し、利用者データベース107に登録されている利用者情報のうちで同一の利用者情報を指し示すものがあるかどうかを判定する(ステップS307)。第1テーブル111と第2テーブル112とに同一の利用者情報を指し示すポインタがあれば、ステップS303の処理に戻り、一次バーコードの発行をやり直しさせる。
【0087】
第1テーブル111と第2テーブル112とに同一の利用者情報を指し示すポインタがなければ、CPU101は、第1テーブル111のうちの剰余aに対応する記憶位置に、利用者データベース107に登録した当該利用者の利用者情報を指し示すポインタを登録すると共に、利用者データベース107の当該利用者のレコードに含まれる一次バーコードの剰余aの項目の数値をステップS305(a)で求めた数値に更新する(ステップS308(a))。CPU101は、また、第2テーブル111のうちの剰余bに対応する記憶位置に、利用者データベース107に登録した当該利用者の利用者情報を指し示すポインタを登録すると共に、利用者データベース107の当該利用者のレコードに含まれる一次バーコードの剰余bの項目の数値をステップS305(b)で求めた数値に更新する(ステップS308(b))。
【0088】
ステップS308(a)または(b)において、利用者データベース107の該当位置に他の利用者の利用者情報を指し示すポインタが登録されていた場合は、リストでつなぐなどの手法により、当該利用者の利用者情報を指し示すポインタも同じ位置に重複して登録する。
【0089】
第1テーブル111及び第2テーブル112へのポインタの登録が終了すると、CPU101は、ステップS303で生成した一次バーコードの画像パターンを、利用者情報に含まれるアドレスに従って第2通信装置104から携帯電話機13に送信する(ステップS309)。CPU101は、一次バーコードの画像パターンの送信が完了した時点で、その一次バーコードの画像パターンを破棄する(ステップS310)。そして、このフローチャートの処理を終了する。
【0090】
利用者が発行された一次バーコードを紛失した場合に、一次バーコードの再発行要求が携帯電話機13から送られてくる。この場合における一次バーコードの再発行も、ステップS303〜S310と同じ処理で行われるが、ステップS308(a)及び(b)に次のような処理が追加される。CPU101は、利用者データベース107の当該利用者のレコードに含まれる一次バーコードの剰余a及び剰余bに従って、第1テーブル111及び第2テーブル112にこれまでに登録されていた当該利用者の利用者情報を指し示すポインタを削除してから、二次バーコードの剰余a及び剰余bの項目の数値をそれぞれステップS305(a)及び(b)で求めた数値に更新する。
【0091】
上記のように利用者登録をし、一次バーコードの発行を受けた利用者は、第1の実施の形態の場合と同じように自動販売機12で商品を購入することができる。この実施の形態においても、商品を購入する場合の全体的な流れは、第1の実施の形態の場合とほぼ同じである。しかし、この実施の形態では、一次バーコード及び二次バーコードの画像データがサーバ装置11内に蓄積されないので、二次バーコードの発行手続が第1の実施の形態と異なることとなる。一次バーコードまたは二次バーコードの画像データをサーバ装置11が自動販売機12から受信したときに、これらのバーコードに基づいて利用者を認証するための手続も第1の実施の形態と異なることとなる。
【0092】
図14は、この実施の形態においてサーバ装置11のCPU101が実行する二次バーコード発行処理を示すフローチャートである。このフローチャートの処理は、ステップS143〜S146の処理に代わって実行される。
【0093】
自動販売機12から一次バーコードの画像データを受信すると、CPU101は、受信した一次バーコードに基づく利用者認証処理を行う(ステップS401)。利用者認証処理については後述する。CPU101は、ステップS401の利用者認証処理において利用者の認証が得られたかどうかを判定する(ステップS402)。利用者の認証が得られなかった場合には、二次バーコードを発行することなく、このフローチャートの処理を終了する。
【0094】
ステップS401の利用者認証処理において利用者の認証が得られた場合には、CPU101は、認証が得られた利用者についての利用者データベース107のレコードを参照して、利用者が各種の条件(ステップS202〜S204と同様)を満たしているかどうかを判定する(ステップS403)。利用者が各種の条件のいずれか1つでも満たしていなければ、二次バーコードを発行することなく、このフローチャートの処理を終了する。
【0095】
利用者が各種の条件の全てを満たしている場合には、CPU101は、ランダムに二次バーコードの画像パターンを生成する(ステップS404)。CPU101は、生成した二次バーコードの画像パターンを所定の方法で数値化し、数値化したバーコード値を変数Xに代入する(ステップS405)。二次バーコードの画像パターンを数値化する方法としても、ステップS304の場合と同じである。
【0096】
CPU101は、バーコード値Xを数値Aで除算した剰余aを求め(ステップS406(a))、バーコード値Xを数値Bで除算した剰余bを求める(ステップS406(b))。数値Aと数値Bは、図13のフローチャートで示したのと同じ値が用いられる。CPU101は、第1テーブル111のうちの剰余aに対応する記憶位置に登録されているポインタを全て取り出し(ステップS407(a))、第2テーブル112のうちの剰余bに対応する記憶位置に登録されているポインタを全て取り出す(ステップS407(b))。
【0097】
CPU101は、第1テーブル111から取り出したポインタと第2テーブル112から取り出したポインタとを比較し、利用者データベース107に登録されている利用者情報のうちで同一の利用者情報を指し示すものがあるかどうかを判定する(ステップS408)。第1テーブル111と第2テーブル112とに同一の利用者情報を指し示すポインタがあれば、ステップS408の処理に戻り、二次バーコードの発行をやり直しさせる。
【0098】
第1テーブル111と第2テーブル112とに同一の利用者情報を指し示すポインタがなければ、CPU101は、第1テーブル111のうちの剰余aに対応する記憶位置に、利用者データベース107に登録した当該利用者の利用者情報を指し示すポインタを登録する。CPU101は、利用者データベース107の当該利用者のレコードに含まれる二次バーコードの剰余aに従って、第1テーブル111にこれまでに登録されていた当該利用者の利用者情報を指し示すポインタを削除してから、利用者データベース107の当該利用者のレコードに含まれる二次バーコードの剰余aの項目の数値をステップS406(a)で求めた数値に更新する(ステップS409(a))。
【0099】
CPU101は、また、第2テーブル111のうちの剰余bに対応する記憶位置に、利用者データベース107に登録した当該利用者の利用者情報を指し示すポインタを登録する。CPU101は、利用者データベース107の当該利用者のレコードに含まれる二次バーコードの剰余bに従って、第2テーブル112にこれまでに登録されていた当該利用者の利用者情報を指し示すポインタを削除してから、利用者データベース107の当該利用者のレコードに含まれる二次バーコードの剰余bの項目の数値をステップS406(b)で求めた数値に更新する(ステップS409(b))。
【0100】
ステップS409(a)または(b)において、利用者データベース107の該当位置に他の利用者の利用者情報を指し示すポインタが登録されていた場合は、リストでつなぐなどの手法により、当該利用者の利用者情報を指し示すポインタも同じ位置に重複して登録する。
【0101】
第1テーブル111及び第2テーブル112へのポインタの登録が終了すると、CPU101は、2つのテーブル111、112から辿り着くことができる利用者情報のレコードに含まれるアドレスを読み出す(ステップS410)。CPU101は、当該利用者情報のレコードに含まれる二次バーコードの発行日時(現在日時)と所定期間後の有効期限とを登録し直し、使用済みフラグをリセットする(ステップS411)。CPU101は、ステップS141で受信した暗号鍵を用いて、ステップS404で生成した二次バーコードの画像データを暗号化する(ステップS412)。
【0102】
CPU101は、ステップS412で暗号化した二次バーコードの画像パターンを、ステップS410で読み出したアドレスに従って第2通信装置104から携帯電話機13に送信する(ステップS413)。CPU101は、二次バーコードの画像パターンの送信が完了した時点で、その二次バーコードの画像パターンを破棄する(ステップS414)。そして、このフローチャートの処理を終了する。
【0103】
図15は、サーバ装置11が自動販売機12から受信した一次バーコードまたは二次バーコードの画像データに基づいて、利用者を認証するための処理を示すフローチャートである。一次バーコードに関しては、上述したステップS401で実行される。二次バーコードに関しては、ステップS150の処理の中で、二次バーコードデータベース106に登録されているかどうかのチェックに代わって実行される。一次バーコードに基づいて利用者認証を行う場合も、二次バーコードに基づいて利用者認証を行う場合も処理は全く同じなので、共にこのフローチャートで説明する。この図の説明で「バーコード」と呼んでいるのは、一次バーコードまたは二次バーコードを指しているものとする。
【0104】
CPU101は、自動販売機12から受信したバーコードの画像パターン(二次バーコードの場合は復号化した画像パターン)を所定の方法で数値化し、数値化したバーコード値を変数Xに代入する(ステップS501)。ここでバーコードの画像パターンを数値化する方法も、ステップS304における方法と同じである。CPU101は、数値化したバーコード値XがステップS303で生成可能な一次バーコードの範囲またはステップS404で生成可能な二次バーコードの範囲にあるかどうかを判定する(ステップS502)。
【0105】
バーコート値Xが生成可能な一次バーコードまたは二次バーコードの範囲にあれば、CPU101は、バーコード値Xを数値Aで除算した剰余aを求め(ステップS503(a))、バーコード値Xを数値Bで除算した剰余bを求める(ステップS503(b))。数値Aと数値Bは、図13のフローチャートで示したのと同じ値が用いられる。CPU101は、第1テーブル111のうちの剰余aに対応する記憶位置に登録されているポインタを全て取り出し(ステップS504(a))、第2テーブル112のうちの剰余bに対応する記憶位置に登録されているポインタを全て取り出す(ステップS504(b))。
【0106】
CPU101は、第1テーブル111から取り出したポインタと第2テーブル112から取り出したポインタとを比較し、利用者データベース107に登録されている利用者情報のうちで同一の利用者情報を指し示すものがあるかどうかを判定する(ステップS505)。第1テーブル111と第2テーブル112とに同一の利用者情報を指し示すポインタがあれば、両方のテーブル111、112からのポインタで指し示された利用者情報に従って、当該利用者を認証する(ステップS506)。そして、このフローチャートの処理を終了する。
【0107】
ステップS502でバーコード値Xが一次バーコードまたは二次バーコードのいずれの範囲にもなかった場合、またはステップS505で第1テーブル111と第2テーブル112とに同一の利用者情報を指し示すポインタがなければ、CPU101は、利用者の認証を不可とする(ステップS508)。そして、このフローチャートの処理を終了する。
【0108】
二次バーコードの画像パターンに従って利用者が認証された場合は、ステップS150では認証された利用者の利用者情報に従って、有効期限や使用済みフラグがチェックされ、条件を満たしていれば、サーバ装置11から自動販売機12に販売許可通知メッセージが送信されることとなる。
【0109】
以上説明したように、この実施の形態にかかる自動販売機システムでは、サーバ装置11は、一次バーコードまたは二次バーコードを発行する際に、第1テーブル111及び第2テーブル112のバーコード値から求めた剰余a、bに対応する記憶位置に、当該バーコードに対応した利用者を指し示すポインタを登録している。自動販売機12から一次バーコードまたは二次バーコードの画像パターンを受信した場合、これを数値化して求めた剰余a、bに従って第1テーブル111及び第2テーブル112を参照して、利用者の認証を行っている。すなわち、バーコード同士の照合を行うことなく、演算処理と記憶内容の参照とによって、一次バーコードまたは二次バーコードと利用者との対応付けを高速に行うことができる。
【0110】
一次バーコードまたは二次バーコードのバーコード値を除算する除数となる数値A及びBの最小公倍数は、バーコード値がとり得る値の最大値と最小値との差よりも大きいという関係がある。異なるバーコード値では、剰余aとbとの両方が一致することがないので、利用者データベース107に登録された各利用者の利用者情報へは、他人のバーコードに基づいて第1テーブル111と第2テーブル112との両方から辿り着くことはあり得ない。従って、一次バーコードまたは二次バーコードから利用者を一義的に特定することができる。
【0111】
バーコード同士の照合を行わなくても一次バーコードまたは二次バーコードと利用者との対応付けができるため、サーバ装置11は、発行した一次バーコードまたは二次バーコードを携帯電話機13に送信完了した時点で、一次バーコードまたは二次バーコードを破棄するものとしている。つまり、サーバ装置11の中に発行した一次バーコードまたは二次バーコードの画像パターンを保存しておく必要が全く必要がない。一次バーコード及び二次バーコードの画像パターンは、携帯電話機13以外では、他のコンピュータ装置に保存される訳でもない。
【0112】
この実施の形態にかかる自動販売機システムは、このように一次バーコード及び二次バーコードの画像パターンを保存するためのデータベースが必要ない。このため、サーバ装置11に必要な記憶容量を小さくすることができる。バーコードのような画像パターンの情報量は、文字データの情報量に比べて比較的大きくなるため、必要な記憶容量の圧縮のために非常に効果的である。
【0113】
一次バーコード及び二次バーコードの画像パターンは、利用者が有する携帯電話機13以外には保存されていないので、例えばサーバ装置11にハッカーが侵入したとしても、各利用者に付与された一次バーコード及び二次バーコードの画像パターンが盗み出されることがない。このため、認証を行うための情報として使用される一次バーコード及び二次バーコードに対して、高度なセキュリティを達成することができる。利用者にとっても、自分が一次バーコード及び二次バーコードの管理を怠らない限り、不正に第三者に取得されることがないという安心感が得られる。
【0114】
実施の形態の変形
本発明は、上記の第1、第2の実施の形態に限られず、種々の変形、応用が可能である。以下、本発明に適用可能な上記の実施の形態の変形態様について説明する。
【0115】
上記の第2の実施の形態では、一次バーコードまたは二次バーコードを所定の方法で数値化したバーコード値を、そのまま数値AまたはBで除算して、剰余aまたはbを求めるものとしていた。これに対して、数値化したバーコード値からバーコード値がとり得る値の最小値を減算した値、またはバーコード値がとり得る値の最大値から数値化したバーコード値を減算した値を、数値AまたはBで除算するものとしてもよい。この場合、バーコード値がとり得る値の範囲によっては、被除数がかなり小さくなって、除算の処理が高速化される。
【0116】
上記の第2の実施の形態では、サーバ装置11は、一次バーコードまたは二次バーコードの画像パターンを自動販売機12から受け取るものとしていた。これに対して、自動販売機12は、バーコードリーダ204で読み取った一次バーコードまたは二次バーコードの画像パターンを数値化して、そのバーコード値をサーバ装置11に送るものとしてもよい。自動販売機12は、バーコード値を数値AとBとでそれぞれ除算した剰余a、bをサーバ装置11に送るものとしてもよい。
【0117】
上記の第2の実施の形態では、一次バーコードまたは二次バーコードに対応した数値をそれぞれ数値A、Bで除算した除数a、bに対応した第1テーブル111及び第2テーブル112の記憶位置に、利用者情報を指し示すポインタを登録するものとしていた。第1テーブル111及び第2テーブル112には、利用者情報を一義的に特定可能な他の情報(例えば、利用者ID)を登録するものとしてもよい。この場合、除数a及びbにそれぞれ対応した第1テーブル111及び第2テーブル112の記憶位置に登録された情報に互いに一致するものがあるかどうかを判定することで、利用者認証を行うことができる。
【0118】
直接アドレス法の適用によって、一次バーコードまたは二次バーコードと利用者との対応付けをさらに高速に行えるようにしてもよい。図16は、この変形例を説明する図である。この図の説明においても、一次バーコードと二次バーコードとをまとめて単にバーコードと呼ぶこととする。第1テーブル111’の先頭番地をM、第2テーブル112’の先頭番地をNとしている。第1テーブル111’及び第2テーブル112’の各ワードには、バーコードに対応する利用者情報の先頭番地が格納される。新たに発行したバーコードにより衝突が発生した場合には特定値が格納されると共に、当該ワードに対応して、特定値テーブル113が別に設けられる。
【0119】
CPU101は、ランダムに生成したバーコードまたは自動販売機12から受信したバーコードを数値化したバーコード値Xを数値Aで除算した剰余aに先頭番地Mを加算したM+a番地を直接アドレスして、第1テーブル111’を参照する。CPU101は、バーコード値Xを数値Bで除算した剰余bに先頭番地Nを加算したN+b番地を直接アドレスして、第2テーブル112’を参照する。M+a番地またはN+b番地に特定値が格納されていると、それに対応して設けられた特定値テーブル113を参照する。
【0120】
M+a番地とN+b番地(場合によってはこれらの番地に対応して設けられた特定値テーブル113)とに同じ利用者情報の先頭番地が格納されていれば、当該利用者が認証される。利用者データベース107からの利用者情報の取り出しも、M+a番地及びN+b番地(場合によってはこれらの番地に対応して設けられた特定値テーブル113)に格納された番地の直接アドレスによって行うことができる。
【0121】
上記の第2の実施の形態では、一次バーコードまたは二次バーコードに対応するバーコード値を2つの数値A、Bでそれぞれ除算した剰余a、bに従って、第1テーブル111及び第2テーブル112に利用者情報を指し示すポインタを登録していた。しかしながら、本発明は、複数種類のハッシュ関数によるハッシュ値の計算を行い、各ハッシュ関数に対応して設けられた複数のハッシュテーブルのハッシュ値に対応した記憶位置に利用者情報を指し示すポインタを登録することで実現することができる。もっとも、異なる2つのバーコードに対して、少なくとも1種類のハッシュ関数によって計算したハッシュ値は一致しないものとなることが必要である。
【0122】
上記の第1、第2の実施の形態では、利用者毎に割り当てられた一次バーコードに従って、二次バーコードが発行されるものとしていた。これに対して、上記した二次バーコードと同様の方法で使用されるバーコードは、他の方法による利用者からの要求(例えば、携帯電話機13の発信者番号を通知したバーコードの発行要求)に従って発行され、利用者に送られるものとしてもよい。
【0123】
上記の第1、第2の実施の形態では、一次バーコードデータベース105または利用者データベース107の各レコードが、一次バーコードの画像と対応付けて利用者の属性に関する情報を含んでいた。これに対して、利用者の属性に関する情報は、一次バーコードそのものに含まれていてもよい。サーバ装置11のCPU101は、自動販売機12から一次バーコードを受信したときに、その一次バーコードに含まれる利用者の属性が商品販売可能な属性を示すかどうかを判断する。サーバ装置11のCPU101は、利用者の属性が商品販売可能な属性を示す場合に、二次バーコードを発行するものとしてもよい。
【0124】
上記の第1、第2の実施の形態では、自動販売機12は、二次バーコードの暗号鍵及び復号鍵を保持し、一次バーコードが読み取られたときに暗号鍵を、二次バーコードが読み取られたときに復号鍵を、それぞれサーバ装置11に送るものとしていた。サーバ装置11は、自動販売機12と対応付けて暗号鍵及び復号鍵を登録したデータベースを備えるものとし、一次バーコードまたは二次バーコードを送ってきた自動販売機12に従って当該データベースから暗号鍵または復号鍵を読み出して、この読み出した暗号鍵または復号鍵を用いて二次バーコードを暗号化または復号化してもよい。暗号鍵または復号鍵の一方がサーバ装置11内のデータベースに登録され、他方が自動販売機12から送られるものとしてもよい。
【0125】
自動販売機12の識別情報、並びに自動販売機12毎に固有の暗号鍵及び復号鍵は、サーバ装置11及び自動販売機12以外の管理コンピュータを用いて管理してもよい。例えば、管理コンピュータは、上記のシステムで使用される自動販売機12の全部ではないが、複数のものを接続するものとし、自動販売機12の識別情報、暗号鍵及び復号鍵をサーバ装置11に送るものとしてもよい。サーバ装置11から自動販売機12への情報も、管理コンピュータを介して送られるものとしてもよい。この場合、サーバ装置11は、管理コンピュータを特定できれば個々の自動販売機12まで特定できなくても、管理コンピュータを介して二次バーコードを読み取ったバーコードリーダ204を含む自動販売機12まで、販売許可通知メッセージを送ることができるようになる。
【0126】
上記の第1、第2の実施の形態では、サーバ装置11と自動販売機12との間は、専用線30で接続されていた。これらの専用線は、無線回線であってもよい。専用線の代わりにエクストラネットを適用することができる。電話回線を使ってダイアルアップでサーバ装置11と自動販売機12との間を接続してもよい。
【0127】
上記の第1、第2の実施の形態では、二次バーコードは、二次バーコードデータベース106または利用者データベース107に有効期限を登録しておいて、その発行から一定時間を経過によって使用できなくすることによって、偽造されて不正な使用がされるのを防ぐようにしていた。しかしながら、本発明において適用可能な二次バーコードの偽造防止技術はこれに限るものではない。
【0128】
二次バーコードにJava(商標)言語などで記述されたプログラムを埋め込んでおき、このプログラムの作用により携帯電話機13に受信されてから所定時間経過することで二次バーコードが自壊するようなものとしてもよい。このプログラムは、定期的にサーバ装置11に時間を確認する機能を有する者とすることができる。このプログラムは、二次バーコードの利用期限が近くなると、警告音を鳴らしたり、バーコードの色を変えたりすることによって利用者に通知する機能を有していてもよい。このプログラムは、二次バーコードの利用期限が過ぎると、自動的に画像を差し替えたり、文字情報を表示して二次バーコードを消滅させる機能を有するものとすることができる。
【0129】
発行から一定時間を経過することによって二次バーコードを使用できなくする手法も上記のものに限られず、携帯電話機13に配信する二次バーコードに期限情報を含ませてもよい。バーコードリーダ204は、二次バーコードの読み取り時にこの期限情報も併せて読み取り、サーバ装置11に期限情報を送信するものとすることができる。サーバ装置11のCPU101は、自動販売機12送られてきた期限情報に基づいて、二次バーコードの有効性を判断するものとすることができる。
【0130】
一次バーコードまたは二次バーコードに電子透かしを埋め込んでおき、その電子透かしを判定することによって、一次バーコードまたは二次バーコードの正当性を判断することもできる。埋め込むことが可能な電子透かしとして、一次バーコードまたは二次バーコードの視覚性に影響を及ぼさないものを複数パターン用意できるのであれば、図17Aに示すように、利用者の携帯電話機13に送信する一次バーコードまたは二次バーコードに、いずれかのパターンの電子透かしを選択して埋め込むものとしてもよい。
【0131】
この場合、サーバ装置11には、図17Bに示すような透かしパターンデータベース108がさらに設けられる。透かしパターンデータベース108の各レコードは、利用者IDと、一次バーコードに適用された電子透かしのパターンと、二次バーコードに適用された電子透かしのパターンとを含んでいる。サーバ装置11の処理には、図18A及び図18Bに示す各ステップの処理が追加される。ここでは、第2の実施の形態の処理に追加するステップとして示しているが、第1の実施の形態の処理にも同様のステップを追加することができる。
【0132】
ステップS308(a)及び(b)またはステップS409(a)及び(b)において、第1テーブル111と第2テーブル112へのポインタの登録が終了すると、サーバ装置11のCPU101は、電子透かしのパターンをランダムに選択する(ステップS601)。選択した電子透かしのパターンは、利用者IDをキーとして透かしパターンデータベース108に登録されると共に(ステップS602)、ステップS303またはステップS404で生成されたバーコードに埋め込まれる(ステップS603)。それから、ステップS309またはS410の処理に進む。
【0133】
ステップS505において第1テーブル111と第2テーブル112との両方から同一の利用者情報に辿り着くと判定すると、CPU101は、自動販売機12から受信したバーコードに埋め込まれた電子透かしのパターンを解析する(ステップS611)。CPU101は、透かしパターンデータベース108に登録された一次バーコードまたは二次バーコードの電子透かしのパターンを利用者IDをキーとして取り出し、解析したパターンと一致するかどうかを判定する(ステップS612)。一致する場合には、ステップS505に進んで利用者を認証するが、不一致であれば、ステップS506に進んで利用者の認証を不可とする。
【0134】
以上のように複数パターンの電子透かしのうちでいずれかのパターンを選択してバーコードに埋め込んでおくことにより、埋め込まれている電子透かしまで偽造できていなければ、偽造したバーコードを使用することができない。特に二次バーコードでは、使用の有効期限が付されているため、この短い期間で画像パターンの他に電子透かしまで解析して偽造するのは実質上不可能である。これにより、利用者に送ったバーコードが偽造されて使用されるのを防ぐことができる。
【0135】
上記の第1、第2の実施の形態では、一次バーコード及び二次バーコードは、二階調の二次元マトリクスパターンを有するバーコードとして携帯電話機13の表示装置305に表示されていたが、多階調のパターンを有するバーコードや、三次元のパターンを有するバーコードとして表示されるものであってもよい。この三次元バーコードは、例えばポリゴンで形成された立方体の各面に二次元のバーコードを表示させたものであり、Java等のアプリケーションによってポリゴンが回転される。サーバ装置11のCPU101は、ポリゴンの回転によって立方体の各面に表示されたコードを全て認識することができる。三次元バーコードは、面数の増加によってより大きな情報量を含むことができる。三次元バーコードのように情報量が大きい識別情報は、必要な記憶容量を小さくできるという第2の実施の形態における効果が顕著に現れる。
【0136】
例えばブルートゥース技術などの適用により、自動販売機12と携帯電話機13とを直接通信可能に構成した場合には、視認不可能な情報であっても、上記した一次バーコード及び二次バーコードの代わりに適用することができる。どのような形態の識別情報であっても、数値化した値を数値A、Bでそれぞれ除算した剰余a、bに従って、第1テーブル111及び第2テーブル112に利用者情報を指し示すポインタを登録し、識別情報同士の照合を行わないで、識別情報と利用者情報とを対応付けるという構成を採ることができる。
【0137】
上記の第1、第2の実施の形態では、サーバ装置11のCPU101は、どの利用者の携帯電話機13に送る場合でもバーコード(一次バーコードまたは二次バーコード)を同じように生成していた。しかしながら、携帯電話機13の表示装置305は、機種によって大きさもドット数もまちまちである。
【0138】
携帯電話機13の機種に応じて最も効果的なバーコード(一次バーコードまたは二次バーコード)を生成するために、サーバ装置11は、図19に示す機種データベース109を備えることができる。機種データベース109は、利用者IDと携帯電話機13の機種に関する情報(少なくとも表示装置305の大きさ及びドット数を含む)を対応付けて記憶している。サーバ装置11のCPU101は、一次バーコートまたは二次バーコードを発行する際に、機種データベース109を参照して、送付先となる携帯電話機13の機種に応じたバーコードを発行することができる。
【0139】
サーバ装置11から携帯電話機13に送信されるバーコード(一次バーコードまたは二次バーコード)は、圧縮されたものであってもよい。サーバ装置11のCPU101は、機種に関係なくバーコード(一次バーコードまたは二次バーコード)を生成してから、送付先となる携帯電話機13の機種に応じてバーコードを圧縮することができる。携帯電話機13の表示装置305には、圧縮されたバーコードが表示されて、バーコードリーダ204によって読み取られる。
【0140】
以上のようにすることで、サーバ装置11は、携帯電話機13が新型のもので表示装置305の表示ドット数が多ければ細かなパターンのバーコードを、携帯電話機13が旧型のもので表示ドット数が少なくても表示装置305に表示可能なバーコードを生成することができる。これにより、表示装置305の機能を最大限に生かしてバーコード(一次バーコードまたは二次バーコード)を表示させることができる。利用者が携帯電話機13の機種を頻繁に変えても、新しい機種に適合した二次元バーコードを生成することができるので、技術的進歩が早い携帯電話機13への適用には特に有効である。
【0141】
上記の第1、第2の実施の形態では、一次バーコード及び二次バーコードは、携帯電話機13に保持され、表示装置305に表示するものとしていたが、サーバ装置11との間に無線通信を行うことができる他の無線通信端末を携帯電話機13の代わりに適用することもできる。ブルートゥース技術などの適用により視認不可能な情報が一次バーコード及び二次バーコードの代わりに用いられる場合には、表示装置を有しない無線通信端末を適用することができる。もっとも、無線通信端末として普及率の高い携帯電話機を適用することで、本発明のシステムを多くの者が利用できるようになる。
【0142】
上記の第1、第2の実施の形態では、図8A、図8B、図9、図13、図14、図15、図18A及び図18Bのフローチャートに示すプログラムは、サーバ装置11の記憶装置102、携帯電話機13のROM302、自動販売機12の記憶装置202の記憶装置402に記憶されているものとして説明した。しかしながら、これらのプログラムの全部または一部は、ハードウェアとは別個に提供されるものであってもよい。
【0143】
図20Aは、プログラムの提供方法の第1の例を示す。サーバ装置11は、それぞれCD−ROMやDVD−ROMなどのコンピュータ読み取り可能な記録媒体55を駆動し、データを読み取るディスクドライブ51をさらに備える。CPU101は、それぞれディスクドライブ51に記録媒体55に記録されたプログラムを読み取らせ、記憶装置102にインストールさせるものとすることができる。携帯電話機13は、ROMカード56を挿入し、データを読み取るカードスロット53をさらに備える。CPU301は、カードスロット53を介してROMカード56に記録されたプログラムの命令を順次取り出して、実行するものとすればよい。
【0144】
図20Bは、プログラムの提供方法の第2の例を示す。サーバ装置11、携帯電話機13の処理プログラムは、インターネット4上のWebサーバ57が有する固定ディスク装置58に格納されている。サーバ装置11または携帯電話機13からプログラムの送信要求が送られてくると、Webサーバ57は、固定ディスク装置58に格納されたプログラムをデータ信号化し、搬送波59に重畳してインターネット4を介して要求元の装置に返送する。サーバ装置11の第1通信装置103または携帯電話機13の通信装置306が搬送波に重畳されて送信されたプログラムを受信すると、CPU101、301は、このプログラムを記憶装置102またはROM302にインストールさせるものとすることができる。ここで、携帯電話機13のROM302としては、電気的にデータの書き込み及び消去が可能なフラッシュメモリを適用することができる。