(57)【要約】【課題】携帯端末を利用して、電子整理券の発行や確認をスムーズに誤りなく行う。【解決手段】電子整理券としての整理券データを発行する発行端末と、前記発行端末から前記整理券データを受信し記憶する携帯端末と、前記携帯端末から前記整理券データを受信して前記整理券データの認証と前記整理券データの順番の確認を行う確認端末と、を含み、前記発行端末は、前記携帯端末からの要求に基づき、順番を示す整理券番号と、認証のための認証用データとを含む前記整理券データを生成する生成手段を含む電子整理券発行確認システムとした。【選択図】      図１
2008092420.tif 000002
【特許請求の範囲】
【請求項１】
電子整理券としての整理券データを発行する発行端末と、
前記発行端末から前記整理券データを受信し記憶する携帯端末と、
前記携帯端末から前記整理券データを受信して前記整理券データの認証と前記整理券データの順番の確認を行う確認端末と、
を含み、
前記発行端末は、前記携帯端末からの要求に基づき、順番を示す整理券番号と、認証のための認証用データとを含む前記整理券データを生成する生成手段を含む電子整理券発行確認システム。
【請求項２】
前記認証用データは、前記整理券データを発行する際にランダムに生成される認証鍵と、認証用ハッシュ値とを含むことを特徴とする請求項１に記載の電子整理券発行確認システム。
【請求項３】
前記発行端末は、さらに、前記整理券データを発行するためのチェックデータを記憶する記憶装置を含み、
前記生成手段は、前記チェックデータとして、前記整理券データの前記整理券番号を生成するための整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を生成するためのチェック用ハッシュ値とを前記記憶装置に格納することを特徴とする請求項２に記載の電子整理券発行確認システム。
【請求項４】
前記生成手段は、前記整理券番号カウンタの値を一だけカウントアップして前記整理券データの前記整理券番号を生成し、前記認証鍵と前記チェック用ハッシュ値を、ハッシュ関数に入力することによって前記認証用ハッシュ値を計算することを特徴とする請求項３に記載の電子整理券発行確認システム。
【請求項５】
前記確認端末は、さらに、前記携帯端末から受信した前記整理券データを確認するための第２のチェックデータを記憶する記憶装置と、
前記第２のチェックデータとして、前記整理券データの前記整理券番号を確認するための第２の整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を確認するための第２のチェック用ハッシュ値とを前記記憶装置に格納する手段とを含む請求項４に記載の電子整理券発行確認システム。
【請求項６】
前記確認端末は、さらに、前記第２の整理券番号カウンタの値を一だけカウントアップした値と前記整理券番号を比較して前記整理券番号を確認し、前記認証鍵と前記第２のチェック用ハッシュ値を前記ハッシュ関数に入力することによって計算されるハッシュ値と前記認証用ハッシュ値を比較して前記認証用ハッシュ値を確認する手段を含む請求項５に記載の電子整理券発行確認システム。
【請求項７】
電子整理券としての整理券データを発行する発行端末と、携帯端末と、確認端末とを含む電子整理券発行確認システムにおける電子整理券発行確認方法であって、
前記発行端末は、前記携帯端末からの要求に基づき、順番を示す整理券番号と、認証のための認証用データとを含む前記整理券データを生成して前記携帯端末に送信し、
前記携帯端末は、前記発行端末から前記整理券データを受信して記憶し、
前記確認端末は、前記携帯端末から前記整理券データを受信して前記整理券データの認証と前記整理券データの順番の確認を行う、
ことを特徴とする電子整理券発行確認方法。
【請求項８】
前記認証用データは、前記整理券データを発行する際にランダムに生成される認証鍵と、認証用ハッシュ値とを含むことを特徴とする請求項７に記載の電子整理券発行確認方法。
【請求項９】
前記発行端末は、前記整理券データを発行するためのチェックデータを記憶し、
前記チェックデータは、前記整理券データの前記整理券番号を生成するための整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を生成するためのチェック用ハッシュ値とを含むことを特徴とする請求項８に記載の電子整理券発行確認方法。
【請求項１０】
前記発行端末は、前記整理券番号カウンタの値を一だけカウントアップして前記整理券データの前記整理券番号を生成し、前記認証鍵と前記チェック用ハッシュ値を、ハッシュ関数に入力することによって前記認証用ハッシュ値を計算することを特徴とする請求項９に記載の電子整理券発行確認方法。
【請求項１１】
前記確認端末は、前記携帯端末から受信した前記整理券データを確認するための第２のチェックデータを記憶し、
前記第２のチェックデータは、前記整理券データの前記整理券番号を確認するための第２の整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を確認するための第２のチェック用ハッシュ値とを含む請求項１０に記載の電子整理券発行確認方法。
【請求項１２】
前記確認端末は、前記第２の整理券番号カウンタの値を一だけカウントアップした値と前記整理券番号を比較して前記整理券番号を確認し、前記認証鍵と前記第２のチェック用ハッシュ値を前記ハッシュ関数に入力することによって計算されるハッシュ値と前記認証用ハッシュ値を比較して前記認証用ハッシュ値を確認する請求項１１に記載の電子整理券発行確認方法。
【請求項１３】
携帯端末からの要求に基づき、整理券データを発行する発行端末において、
前記整理券データを発行する際に、順番を示す整理券番号と、ランダムに生成される認証鍵と認証用ハッシュ値とを含む認証のための認証用データとを含む整理券データを生成する生成手段と、
前記整理券データを発行するためのチェックデータを記憶する記憶装置とを含み、
前記生成手段は、
前記チェックデータとして、前記整理券データの前記整理券番号を生成するための整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を生成するためのチェック用ハッシュ値とを生成する手段と、
前記整理券番号カウンタの値を一だけカウントアップして前記整理券番号を生成し、前記認証鍵と前記チェック用ハッシュ値をハッシュ関数に入力することによって前記認証用ハッシュ値を生成する手段とを含む発行端末。
【請求項１４】
整理券データを確認する確認端末であって、
順番を示す整理券番号と、認証鍵と認証用ハッシュ値とを含む認証のための認証用データとを含む整理券データを携帯端末から受信する手段と、
前記整理券データを確認するためのチェックデータを記憶する記憶装置とを含み、
前記チェックデータとして、前記整理券データの前記整理券番号を確認するための整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を確認するためのチェック用ハッシュ値とを生成する手段と、
前記整理券番号カウンタの値を一だけカウントアップした値と前記受信手段で受信された前記整理券番号を比較して前記整理券番号を確認し、前記認証鍵と前記チェック用ハッシュ値をハッシュ関数に入力することによって計算されるハッシュ値と前記受信手段で受信された前記認証用ハッシュ値を比較して前記認証用ハッシュ値を確認する手段を含む、
ことを特徴とする確認端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は電子整理券発行確認システム、電子整理券発行確認方法、発行端末、確認端末に関し、特に、携帯端末を利用して、電子整理券の発行や確認をスムーズに誤りなく行うことを可能とする、電子整理券発行確認システム、電子整理券発行確認方法、発行端末、確認端末に関する。
【背景技術】
【０００２】
従来、店舗におけるセールの販売開始待ち、コンサートやイベントでの入場待ち等、不特定多数の人々が行列を形成し、これらの人々を順番に誘導して会場へ入場させるような場合が多くある。このようなとき、通常、紙などに順番を印刷した整理券を配布して、人々の順番を管理するようになっている。整理券を配布された人々は、行列を形成せずに自由な場所で過ごし、販売開始時間あるいは入場開始時間になったときに会場に集まってくる。会場側では人々が所持している整理券の順番を確認してから、順番通りに会場へ入場させるようにしている。
【０００３】
これは、マナーを守らない人による行列への割り込みなどの問題に対応するためであり、或いは、都心部などでは、近隣の迷惑につながるために、行列自体を形成できない、といった問題に対応するためである。
【０００４】
しかし、このような紙ベースの整理券では、行列の規模が大きくなると、そのための準備や順番の確認が容易ではない、という課題がある。また、整理券の発行が急遽必要となった場合などでは、準備を行う時間が制約されてしまうため、対応が困難である、という課題がある。
【０００５】
このような課題に対応するために、携帯端末に対して電子整理券を発券することにより、遊園地やテーマパークなどへの入場を管理するシステムが提案されている（例えば、特許文献１参照。）。
【０００６】
上述した特許文献１「電子整理券の発券システム及び携帯端末及び発券サーバ」には、以下のようなシステムが記載されている。すなわち、入場者は、無線通信を通じてインターネットに接続してＷｅｂサイトを利用する機能を有する携帯端末を用いる。そして、携帯端末から、サービス提供施設の管理センターが運営するインターネット上の整理券発券手段を有する整理券発券サイトにアクセスする。携帯端末は電子整理券の発券要求を送信し、電子整理券の受信を行う。整理券発券サイトは、全ての整理券の発券状況、サービス提供施設で提供するサービスのタイムテーブル及び各々のサービスポイント間の移動所要時間を掌握している。これにより、複数の電子整理券の発券要求に対しても、利用時間が重なることがないように適切に電子整理券を発券することができるようになる、としている。また、電子整理券を用いるので、従来の紙等の整理券の発券を行う場合に対して、人手や整理券の発券機が不要となり、コストの低減をすることができる、としている。
【０００７】
他の例として、行列に並ぶことなく整理券の発券が受けられるとともに、長時間サービス利用者を待たせることのない発券システムを提案しているものもある（例えば、特許文献２参照。）。
【０００８】
この特許文献２「発券システム、及び発券プログラムを記録したコンピュータ読み取り可能な記録媒体」には、以下のような発券システムが記載されている。すなわち、発券システムは、発券機と予約端末とを具備している。発券機は、予約データを受信し、整理番号を付した整理券を発券する発券手段、整理券データを送信する整理券データ送信手段、等を有する。予約端末は、予約データを送信し、整理券データを受信する整理券データ受信手段、等を有する。そして、予約端末として携帯電話などの携帯情報端末を利用するようにすれば、整理券を予約する場所が、室内だけでなく通勤途中などの室外からも行うことができる、としている。また、携帯情報端末の表示画面に表示される整理券を、金融機関や行政機関のサービス担当者に提示することにより、サービスを受ける資格を有することを証明できる、としている。
【０００９】
【特許文献１】特開２００４−１７８１６５号公報（第４−１１頁、図１−１３）
【特許文献２】特開２００２−１１７１７４号公報（第４−７頁、図１−５）
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上述した、従来の特許文献１に記載の発券システムは、電子整理券を携帯端末に対して発券できるようになっている。しかし、この電子整理券は、大勢の人たちが同時に入場可能なアトラクションなどへの入場を許可するものであり、大勢の人たちの一人一人の順番までは管理できるようになっていない、いう問題を有している。また、電子整理券の正当性を証明できるようにもなっていない。
【００１１】
特許文献２に記載の発券システムは、整理番号を付した整理券を発券できるようになっているため、一人一人の順番の管理を行うことが可能となっている。しかし、該整理券の正当性を証明できる仕組みは付いていない、という問題を有している。また、整理券の確認は、人手を介して行うようになっており、確認の自動化を行うようにはなっていない。
【００１２】
本発明は、上述した事情を改善するために成されたものであり、従って、本発明の目的は、携帯端末を利用して、電子整理券の発行や確認をスムーズに誤りなく行うことを可能とする、電子整理券発行確認システム、電子整理券発行確認方法、発行端末、確認端末を提供することにある。
【課題を解決するための手段】
【００１３】
本発明の電子整理券発行確認システムは、
電子整理券としての整理券データを発行する発行端末と、
前記発行端末から前記整理券データを受信し記憶する携帯端末と、
前記携帯端末から前記整理券データを受信して前記整理券データの認証と前記整理券データの順番の確認を行う確認端末と、
を含み、
前記発行端末は、前記携帯端末からの要求に基づき、順番を示す整理券番号と、認証のための認証用データとを含む前記整理券データを生成する生成手段を含む。
【００１４】
また、前記認証用データは、前記整理券データを発行する際にランダムに生成される認証鍵と、認証用ハッシュ値とを含むことを特徴とする。
【００１５】
さらに、前記発行端末は、さらに、前記整理券データを発行するためのチェックデータを記憶する記憶装置を含み、
前記生成手段は、前記チェックデータとして、前記整理券データの前記整理券番号を生成するための整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を生成するためのチェック用ハッシュ値とを前記記憶装置に格納することを特徴とする。
【００１６】
また、前記生成手段は、前記整理券番号カウンタの値を一だけカウントアップして前記整理券データの前記整理券番号を生成し、前記認証鍵と前記チェック用ハッシュ値を、ハッシュ関数に入力することによって前記認証用ハッシュ値を計算することを特徴とする。
【００１７】
さらに、前記確認端末は、さらに、前記携帯端末から受信した前記整理券データを確認するための第２のチェックデータを記憶する記憶装置と、
前記第２のチェックデータとして、前記整理券データの前記整理券番号を確認するための第２の整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を確認するための第２のチェック用ハッシュ値とを前記記憶装置に格納する手段とを含む。
【００１８】
また、前記確認端末は、さらに、前記第２の整理券番号カウンタの値を一だけカウントアップした値と前記整理券番号を比較して前記整理券番号を確認し、前記認証鍵と前記第２のチェック用ハッシュ値を前記ハッシュ関数に入力することによって計算されるハッシュ値と前記認証用ハッシュ値を比較して前記認証用ハッシュ値を確認する手段を含む。
【００１９】
本発明の電子整理券発行確認方法は、
電子整理券としての整理券データを発行する発行端末と、携帯端末と、確認端末とを含む電子整理券発行確認システムにおける電子整理券発行確認方法であって、
前記発行端末は、前記携帯端末からの要求に基づき、順番を示す整理券番号と、認証のための認証用データとを含む前記整理券データを生成して前記携帯端末に送信し、
前記携帯端末は、前記発行端末から前記整理券データを受信して記憶し、
前記確認端末は、前記携帯端末から前記整理券データを受信して前記整理券データの認証と前記整理券データの順番の確認を行う、
ことを特徴とする。
【００２０】
また、前記認証用データは、前記整理券データを発行する際にランダムに生成される認証鍵と、認証用ハッシュ値とを含むことを特徴とする。
【００２１】
さらに、前記発行端末は、前記整理券データを発行するためのチェックデータを記憶し、
前記チェックデータは、前記整理券データの前記整理券番号を生成するための整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を生成するためのチェック用ハッシュ値とを含むことを特徴とする。
【００２２】
また、前記発行端末は、前記整理券番号カウンタの値を一だけカウントアップして前記整理券データの前記整理券番号を生成し、前記認証鍵と前記チェック用ハッシュ値を、ハッシュ関数に入力することによって前記認証用ハッシュ値を計算することを特徴とする。
【００２３】
さらに、前記確認端末は、前記携帯端末から受信した前記整理券データを確認するための第２のチェックデータを記憶し、
前記第２のチェックデータは、前記整理券データの前記整理券番号を確認するための第２の整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を確認するための第２のチェック用ハッシュ値とを含む。
【００２４】
また、前記確認端末は、前記第２の整理券番号カウンタの値を一だけカウントアップした値と前記整理券番号を比較して前記整理券番号を確認し、前記認証鍵と前記第２のチェック用ハッシュ値を前記ハッシュ関数に入力することによって計算されるハッシュ値と前記認証用ハッシュ値を比較して前記認証用ハッシュ値を確認する。
【００２５】
本発明の発行端末は、
携帯端末からの要求に基づき、整理券データを発行する発行端末において、
前記整理券データを発行する際に、順番を示す整理券番号と、ランダムに生成される認証鍵と認証用ハッシュ値とを含む認証のための認証用データとを含む整理券データを生成する生成手段と、
前記整理券データを発行するためのチェックデータを記憶する記憶装置とを含み、
前記生成手段は、
前記チェックデータとして、前記整理券データの前記整理券番号を生成するための整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を生成するためのチェック用ハッシュ値とを生成する手段と、
前記整理券番号カウンタの値を一だけカウントアップして前記整理券番号を生成し、前記認証鍵と前記チェック用ハッシュ値をハッシュ関数に入力することによって前記認証用ハッシュ値を生成する手段とを含む。
【００２６】
本発明の確認端末は、
整理券データを確認する確認端末であって、
順番を示す整理券番号と、認証鍵と認証用ハッシュ値とを含む認証のための認証用データとを含む整理券データを携帯端末から受信する手段と、
前記整理券データを確認するためのチェックデータを記憶する記憶装置とを含み、
前記チェックデータとして、前記整理券データの前記整理券番号を確認するための整理券番号カウンタの値と、前記整理券データの前記認証用ハッシュ値を確認するためのチェック用ハッシュ値とを生成する手段と、
前記整理券番号カウンタの値を一だけカウントアップした値と前記受信手段で受信された前記整理券番号を比較して前記整理券番号を確認し、前記認証鍵と前記チェック用ハッシュ値をハッシュ関数に入力することによって計算されるハッシュ値と前記受信手段で受信された前記認証用ハッシュ値を比較して前記認証用ハッシュ値を確認する手段を含む、ことを特徴とする。
【発明の効果】
【００２７】
本発明の電子整理券発行確認システムは、
電子整理券としての整理券データを発行する発行端末と、
前記発行端末から前記整理券データを受信し記憶する携帯端末と、
前記携帯端末から前記整理券データを受信して前記整理券データの認証と前記整理券データの順番の確認を行う確認端末と、
を含み、
前記発行端末は、前記携帯端末からの要求に基づき、順番を示す整理券番号と、認証のための認証用データとを含む前記整理券データを生成する生成手段を含む。
【００２８】
従って、認証用データによって整理券データの正当性を認証することが可能となる、という効果を有している。
【発明を実施するための最良の形態】
【００２９】
次に、本発明の実施の形態について図面を参照して説明する。
【００３０】
図１は、本発明の電子整理券発行確認システムの一実施形態を示すブロック図である。
【００３１】
図１に示す本実施の形態は、整理券データ（すなわち、電子整理券）を記憶保持する携帯端末１と、整理券データを発行する整理券データ発行端末２と、整理券データの認証と整理券の順番の確認を行う整理券データ確認端末３と、から構成されている。
【００３２】
携帯端末１は、整理券データ発行端末２に対して整理券データの発行要求を送信し、整理券データ発行端末２が発行した整理券データを、近距離無線通信によって受信し、内部の記憶装置に記憶させ保持する機能を備えている。また、内部に記憶保持している整理券データを、近距離無線通信によって整理券データ確認端末３に送信する機能を備えている。
【００３３】
携帯端末１は、上述した機能だけを備える端末装置であってもよいし、或いは、携帯電話、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙｐｈｏｎｅ  Ｓｙｓｔｅｍ：パーソナルハンディフォンシステム）端末、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ：携帯情報端末）などに、上述の機能を追加して搭載する構成のものであってもよい。
【００３４】
整理券データ発行端末２は、整理券データを発行して、近距離無線通信によって携帯端末１に送信する機能を備えている。
【００３５】
整理券データ確認端末３は、携帯端末１が記憶保持している整理券データを、近距離無線通信によって受信し、該整理券データの認証と整理券の順番の確認を行う機能を備えている。
【００３６】
なお、本実施形態で用いる近距離無線通信としては、携帯情報機器向けの無線通信技術であるところのブルートゥース（Ｂｌｕｅｔｏｏｔｈ）や、赤外線を利用して近距離のデータ通信を行うＩｒＤＡ（Ｉｎｆｒａｒｅｄ  Ｄａｔａ  Ａｓｓｏｃｉａｔｉｏｎ：アイアールディーエー）などを使用するものとする。或いは、これらを包含する無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ：ラン）技術を使用して近距離の無線通信を行わせるものを使用するようにしてもよい。
【００３７】
次に、図２を参照して、図１に示した電子整理券発行確認システムの詳細構成について説明する。
【００３８】
図２は、図１の電子整理券発行確認システムの一例を示す詳細ブロック図である。
【００３９】
図２において、携帯端末１は、データ通信制御部１１と、制御部１２と、記憶部１３を備えている。
【００４０】
データ通信制御部１１は、近距離無線通信を行う機能を具備しており、外部の機器（整理券データ発行端末２、整理券データ確認端末３など）との間で、データの送受信を行う。
【００４１】
記憶部１３は、整理券データを記憶し保持する。
【００４２】
制御部１２は、データ通信制御部１１および記憶部１３を制御して、整理券データ発行端末２から送信される整理券データを、データ通信制御部１１を介して受信し、記憶部１３に保存する。また、整理券データ確認端末３から受信する整理券データの読み出し要求に対して、記憶部１３の整理券データを読み出し、データ通信制御部１１を介して整理券データ確認端末３へ送信する。さらに、整理券データ確認端末３から要求される整理券データの削除要求に対して、記憶部１３に保持している整理券データを削除する。
【００４３】
制御部１２は、図示しないＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：中央処理装置）を備えており、図示しない記憶部に記憶されているコンピュータプログラムによって動作するよう構成されている。
【００４４】
整理券データ発行端末２は、データ通信制御部２１と、整理券データ生成部２２と、記憶部２３を備えている。 
データ通信制御部２１は、近距離無線通信を行う機能を具備しており、外部の機器（特に、携帯端末１）との間で、データの送受信を行う。
【００４５】
記憶部２３は、整理券データを生成するために使用するチェックデータを記憶し保持する。
【００４６】
整理券データ生成部２２は、データ通信制御部２１および記憶部２３を制御して、携帯端末１からの整理券データの発行要求を受信した場合に、記憶部２３のチェックデータを使用して整理券データを生成し、データ通信制御部２１を介して携帯端末１へ送信する。また、記憶部２３のチェックデータを使用した後、チェックデータの内容を更新し、記憶部２３に保存し直す。
【００４７】
整理券データ生成部２２は、図示しないＣＰＵを備えており、図示しない記憶部に記憶されているコンピュータプログラムによって動作するよう構成されている。
【００４８】
整理券データ確認端末３は、データ通信制御部３１と、整理券データ確認部３２と、記憶部３３と、表示部３４を備えている。 
データ通信制御部３１は、近距離無線通信を行う機能を具備しており、外部の機器（特に、携帯端末１）との間で、データの送受信を行う。
【００４９】
記憶部３３は、整理券データの認証と整理券の順番の確認を行うために使用するチェックデータを記憶し保持する。
【００５０】
表示部３４は、整理券データ確認部３２が整理券データの認証と整理券の順番の確認を行った際の確認結果を表示する。
【００５１】
整理券データ確認部３２は、データ通信制御部３１、記憶部３３および表示部３４を制御して、携帯端末１から整理券データを受信した場合に、記憶部３３のチェックデータを使用して該整理券データの認証と整理券の順番の確認を行い、その結果を表示部３４に表示する。また、記憶部３３のチェックデータを使用した後、チェックデータの内容を更新し、記憶部３３に記憶し直す。さらに、整理券データの確認結果が正常であった場合、データ通信制御部３１を介して、携帯端末１に対する整理券データの削除要求を送信する。
【００５２】
整理券データ確認部３２は、図示しないＣＰＵを備えており、図示しない記憶部に記憶されているコンピュータプログラムによって動作するよう構成されている。
【００５３】
なお、本実施形態における整理券データ（すなわち、電子整理券）には、整理券の順番を示す整理券番号の他に、該整理券データを認証するための認証用データが記載されるようになっている。これは、従来のように、整理券データとして整理券番号を記載するだけでは、仮に、該整理券データが偽造されてしまった場合に、その偽造を見破れないからである。本実施形態においては、整理券データとして、整理券番号に加えて認証用データをも記載することにより、該整理券データの偽造の防止を図るようにしている。
【００５４】
そして、整理券データに記載する認証用データは、従来から、通信データなどの改竄防止や認証などに用いられている「ハッシュ関数」を用いて生成するようにしている。
【００５５】
ハッシュ関数（ｆと表記する）とは、任意長の入力データ（ｍと表記する）を、固定長の出力データ（ハッシュ値と称される。Ｈａｓｈと表記する）に変換する特殊な関数である。すなわち、Ｈａｓｈ＝ｆ（ｍ）によって、入力データｍのハッシュ値Ｈａｓｈが得られるようになっている。そして、ハッシュ関数は、例えば、通信回線を通じてデータを送受信する際に、経路の両端でデータのハッシュ値を求めて両者を比較することにより、データが通信途中で改竄されていないかを調べる、といった用途に用いられている。ハッシュ関数としては、ＳＨＡ（Ｓｅｃｕｒｅ  Ｈａｓｈ  Ａｌｇｏｒｉｔｈｍ：シャー）やＭＤ５（Ｍｅｓｓａｇｅ  Ｄｉｇｅｓｔ  Ａｌｇｏｒｉｔｈｍ  ５：エムディーファイブ）などが代表的なものとして知られている。
【００５６】
本実施形態では、図３（１）に示すように、任意の２入力型のハッシュ関数を、ｆ（Ｈａｓｈ（ｎ）、Ｋｅｙ（ｘ））、と表記するものとする。ここで、２入力型のハッシュ関数とは、２つの入力データＨａｓｈ（ｎ）とＫｅｙ（ｘ）のビット結合などの処理を行って、通常のハッシュ関数ｆ（ｍ）へ２つの入力データを入力出来るようにしたものである。また、Ｈａｓｈ（ｎ）は、ハッシュ関数ｆをｎ回適用した後のハッシュ値であることを示し、Ｋｅｙ（ｘ）は、ハッシュ関数ｆをｘ回目に適用する際の鍵となる入力データであることを示している。
【００５７】
すなわち、図３（２）に示すように、ハッシュ関数ｆを１回目に適用する際には、ｆ（Ｈａｓｈ（０）、Ｋｅｙ（１））によって、ハッシュ値としてＨａｓｈ（１）を得る（図３（２）の３２０１の行に示す）。また、ハッシュ関数ｆを２回目に適用する際には、ｆ（Ｈａｓｈ（１）、Ｋｅｙ（２））によって、ハッシュ値としてＨａｓｈ（２）を得る（図３（２）の３２０２の行に示す）。以下同様である。
【００５８】
なお、本実施形態で用いるハッシュ関数としては、上述したＳＨＡ、或いは、ＭＤ５などを使用するものとする。或いは、本実施形態の整理券データの偽造の防止を図り得るものであれば、他のアルゴリズムを用いるハッシュ関数を使用するようにしてもよい。
【００５９】
次に、図４を参照して、本実施形態で使用する整理券データと、整理券データの生成および確認時に使用するチェックデータの構成について説明する。
【００６０】
図４は、整理券データとチェックデータの構成の一例を示す図である。
【００６１】
図４において、整理券データ４は、整理券の認証用データであるところの認証鍵４１と認証用ハッシュ値４２、および、整理券の順番を示す整理券番号４３とを備えている。
【００６２】
認証鍵４１は、該整理券データごとにランダムに生成される鍵の情報を格納する。
【００６３】
認証用ハッシュ値４２は、認証鍵４１と後述するチェックデータ５のチェック用ハッシュ値５１を、ハッシュ関数の入力とした際に生成されるハッシュ値を格納する。
【００６４】
整理券番号４３は、整理券の順番を示す番号を格納する。
【００６５】
図４におけるチェックデータ５は、チェック用ハッシュ値５１と、整理券番号カウンタ５２を備えている。
【００６６】
チェック用ハッシュ値５１は、整理券データ４の認証用ハッシュ値４２を生成するために用いられるハッシュ値を格納する。
【００６７】
整理券番号カウンタ５２は、整理券データ４の整理券番号４３を生成する為に使用されるカウンタ値を格納する。
【００６８】
図４に示す整理券データ４の認証鍵４１は、該整理券データごとにランダムに生成される乱数であり、例えば、８バイト長のデータで構成される。また、整理券データ４の認証用ハッシュ値４２及びチェックデータ５のチェック用ハッシュ値５１は、ハッシュ関数によって生成されるハッシュ値であり、例えば、８バイト長のデータとして生成される。整理券データ４の整理券番号４３及びチェックデータ５の整理券番号カウンタ５２は、「１」からはじまる数字として生成され、例えば、１０進数１０桁の数値データで構成される。但し、整理券番号カウンタ５２の初期値は「０」とする。
【００６９】
なお、上述した認証鍵４１は、図３（１）に示したＫｅｙ（ｘ）に相当する。また、チェック用ハッシュ値５１と認証用ハッシュ値４２は、それぞれ、図３（１）に示したＨａｓｈ（ｎ）とＨａｓｈ（ｎ＋１）に相当する。
【００７０】
次に、図５を参照して、本実施形態で使用する整理券データの生成方法について説明する。整理券データ４の生成は、携帯端末１からの発行要求により、整理券データ発行端末２の整理券データ生成部２２において成されるものである。
【００７１】
図５は、整理券データの生成方法を説明する図である。
【００７２】
図５において、発行時点の行（図５の５０００の行）は、整理券データを発行する時点を示している。例えば、発行時点Ｔ０の列は、整理券データを未だ発行していない初期状態の時点であり、Ｔ１の列は、１枚目の整理券データを発行する時点である。Ｔ２の列は、２枚目の整理券データを発行する時点であり、Ｔ３の列は、３枚目の整理券データを発行する時点である。以下同様である。
【００７３】
図５の最左の列には、図４に示した整理券データ４の認証鍵４１（図５の５００１の行）と認証用ハッシュ値４２（図５の５００２の行）、及び、図４に示したチェックデータ５のチェック用ハッシュ値５１（図５の５００３の行）を示している。また、その下の行の図５の５００４の行、５００５の行には、図４に示した整理券データ４の整理券番号４３とチェックデータ５の整理券番号カウンタ５２を示している。
【００７４】
まず、図５のＴ０の時点は、整理券データを未だ発行していない初期状態の時点である。初期状態においては、チェックデータ５のチェック用ハッシュ値５１は、初期値としてのデフォルト値「Ｈａｓｈ（０）」を有し、整理券番号カウンタ５２は、初期値として数「０」を有している。
【００７５】
次に、１枚目の整理券を発行するＴ１の時点では、先ず、該整理券の認証鍵４１として、乱数「Ｋｅｙ（１）」を生成する。そして、この「Ｋｅｙ（１）」と、Ｔ０時点のチェック用ハッシュ値５１「Ｈａｓｈ（０）」を、ハッシュ関数へ入力すると、ハッシュ値として「Ｈａｓｈ（１）」が出力される。この「Ｈａｓｈ（１）」は、１枚目の整理券データ４の認証用ハッシュ値４２となる。また、Ｔ０時点の整理券番号カウンタ５２の「０」を一だけカウントアップして、Ｔ１時点の整理券番号４３として「１」を得る。すなわち、ここで、１枚目の整理券データ４は、認証鍵４１として「Ｋｅｙ（１）」、認証用ハッシュ値４２として「Ｈａｓｈ（１）」、整理券番号４３として「１」を有するものとなる。
【００７６】
なお、Ｔ１時点で出力された「Ｈａｓｈ（１）」は、次のＴ２時点でのハッシュ関数への入力とするため、チェック用ハッシュ値５１の値として書き換えられる。つまり、チェック用ハッシュ値５１は、Ｔ０時点の初期値「Ｈａｓｈ（０）」が、Ｔ１時点の終了時には「Ｈａｓｈ（１）」に書き換えられる。また、Ｔ１時点の整理券番号４３として得られた数「１」は、次のＴ２時点での整理券番号４３を生成するため、整理券番号カウンタ５２の値として書き換えられる。つまり、整理券番号カウンタ５２は、Ｔ０時点の初期値「０」が、Ｔ１時点の終了時には「１」に書き換えられる。
【００７７】
同様に、２枚目の整理券を発行するＴ２の時点では、先ず、該整理券の認証鍵４１として、乱数「Ｋｅｙ（２）」を生成する。そして、この「Ｋｅｙ（２）」と、Ｔ１時点のチェック用ハッシュ値５１「Ｈａｓｈ（１）」を、ハッシュ関数へ入力すると、ハッシュ値として「Ｈａｓｈ（２）」が出力される。この「Ｈａｓｈ（２）」は、２枚目の整理券データ４の認証用ハッシュ値４２となる。また、Ｔ１時点の整理券番号カウンタ５２の「１」を一だけカウントアップして、Ｔ２時点の整理券番号４３として「２」を得る。すなわち、ここで、２枚目の整理券データ４は、認証鍵４１として「Ｋｅｙ（２）」、認証用ハッシュ値４２として「Ｈａｓｈ（２）」、整理券番号４３として「２」を有するものとなる。
【００７８】
なお、Ｔ２時点で出力された「Ｈａｓｈ（２）」は、次のＴ３時点でのハッシュ関数への入力とするため、チェック用ハッシュ値５１の値として書き換えられる。つまり、チェック用ハッシュ値５１は、Ｔ１時点の「Ｈａｓｈ（１）」が、Ｔ２時点の終了時には「Ｈａｓｈ（２）」に書き換えられる。また、Ｔ２時点の整理券番号４３として得られた数「２」は、次のＴ３時点での整理券番号４３を生成するため、整理券番号カウンタ５２の値として書き換えられる。つまり、整理券番号カウンタ５２は、Ｔ１時点の値「１」が、Ｔ２時点の終了時には「２」に書き換えられる。
【００７９】
以下同様にして、Ｔ３時点で生成される３枚目の整理券データ４は、認証鍵４１として「Ｋｅｙ（３）」、認証用ハッシュ値４２として「Ｈａｓｈ（３）」、整理券番号４３として「３」を有するものとなる。なお、Ｔ３時点の終了時には、チェックデータ５のチェック用ハッシュ値５１は「Ｈａｓｈ（３）」に書き換えられ、整理券番号カウンタ５２は「３」に書き換えられる。
【００８０】
Ｔ４時点以降での整理券データ４も同様にして生成されるため、整理券データの生成方法に関するこれ以上の説明は省略するものとする。
【００８１】
次に、図６を参照して、本実施形態で使用する整理券データの確認方法について説明する。携帯端末１から受信する整理券データ４の確認は、整理券データ確認端末３の整理券データ確認部３２において成されるものである。
【００８２】
図６は、整理券データの確認方法を説明する図である。
【００８３】
図６において、確認時点の行（図６の６０００の行）は、整理券データを確認する時点を示している。例えば、確認時点ｔ０の列は、整理券データを未だ確認していない初期状態の時点であり、ｔ１の列は、１枚目の整理券データを確認する時点である。ｔ２の列は、２枚目の整理券データを確認する時点であり、ｔ３の列は、３枚目の整理券データを確認する時点である。以下同様である。
【００８４】
図６の最左の列には、図４に示した整理券データ４の認証鍵４１（図６の６００１の行）と認証用ハッシュ値４２（図６の６００２の行）、及び、図４に示したチェックデータ５のチェック用ハッシュ値５１（図６の６００３の行）を示している。そして、図６の６００３−１の行には、整理券データ４の確認のために生成する確認用ハッシュ値５１０を示している。確認用ハッシュ値５１０は、認証鍵４１とチェック用ハッシュ値５１を、整理券データ４の生成時と同一のハッシュ関数に入力して生成するハッシュ値である。
【００８５】
また、その下方の行の図６の６００４の行、６００５の行には、図４に示した整理券データ４の整理券番号４３とチェックデータ５の整理券番号カウンタ５２を示している。そして、図６の６００５−１の行には、整理券データ４の確認のために生成する確認用整理券番号５２０を示している。確認用整理券番号５２０は、確認時点（例えば、ｔ１時点）の一時点前の時点（ｔ０）の整理券番号カウンタ５２の数を一だけカウントアップして生成する数（整理券番号）である。
【００８６】
まず、図６のｔ０の時点は、整理券データを未だ１つも確認していない初期状態の時点である。初期状態においては、チェックデータ５のチェック用ハッシュ値５１は、初期値としてのデフォルト値「Ｈａｓｈ（０）」を有し、整理券番号カウンタ５２は、初期値として数「０」を有している。これらの値は、図５で説明した整理券データの生成時の初期値と全く同一の値となっている。
【００８７】
次に、１枚目の整理券を確認するｔ１の時点では、先ず、整理券データ４から認証鍵４１として「Ｋｅｙ（１）」を取得する。そして、この「Ｋｅｙ（１）」と、ｔ０時点のチェック用ハッシュ値５１の「Ｈａｓｈ（０）」を、整理券データ４の生成時と同一のハッシュ関数へ入力すると、確認用ハッシュ値５１０として「Ｈａｓｈ（？）」が出力される。この確認用ハッシュ値５１０「Ｈａｓｈ（？）」を、整理券データ４から取得した認証用ハッシュ値４２「Ｈａｓｈ（１）」と比較する。比較の結果、両者が一致した場合は、整理券データ４の認証用ハッシュ値４２「Ｈａｓｈ（１）」は、１枚目の整理券データとして生成された正しいものであると認識可能となる。
【００８８】
また、ｔ０時点の整理券番号カウンタ５２の「０」を一だけカウントアップして、ｔ１時点の確認用整理券番号５２０として「？」を得る（ここでは、「？」は「１」である。）。この確認用整理券番号５２０「？」を、整理券データ４から取得した整理券番号４３の「１」と比較する。比較の結果、両者が一致した場合は、整理券データ４の整理券番号４３「１」は、１枚目の整理券データとして生成された正しいものであると認識可能となる。
【００８９】
すなわち、ここで、整理券データ４から取得した認証鍵４１の「Ｋｅｙ（１）」、認証用ハッシュ値４２の「Ｈａｓｈ（１）」、および、整理券番号４３の「１」の値は、１枚目の整理券データ４であることが確認されることとなる。つまり、該整理券データ４は、正しい認証用データ（Ｋｅｙ（１）とＨａｓｈ（１））と正しい順番を有する正しい整理券データである、と確認できる。
【００９０】
なお、ｔ１時点で出力された「Ｈａｓｈ（？）、すなわち、Ｈａｓｈ（１）と同一」は、次のｔ２時点でのハッシュ関数への入力とするため、チェック用ハッシュ値５１の値として書き換えられる。つまり、チェック用ハッシュ値５１は、ｔ０時点の初期値「Ｈａｓｈ（０）」が、ｔ１時点の終了時には「Ｈａｓｈ（１）」に書き換えられる。また、ｔ１時点の確認用整理券番号５２０として得られた数「？」、すなわち、「１」は、次のｔ２時点での確認用整理券番号５２０を生成するため、整理券番号カウンタ５２の値として書き換えられる。つまり、整理券番号カウンタ５２は、ｔ０時点の初期値「０」が、ｔ１時点の終了時には「１」に書き換えられる。
【００９１】
ここで、上述した確認用ハッシュ値５１０「Ｈａｓｈ（？）」と、整理券データ４から取得した認証用ハッシュ値４２「Ｈａｓｈ（１）」とを比較した結果、両者が一致しない場合は、以下のように処理する。すなわち、整理券データ４から取得した認証用ハッシュ値４２「Ｈａｓｈ（１）」は、１枚目の整理券データとして生成されたものではない、と認識する。
【００９２】
また、上述した確認用整理券番号５２０「？」と、整理券データ４から取得した整理券番号４３の「１」とを比較した結果、両者が一致しない場合は、該整理券データ４は順番が違うものである、と認識する。
【００９３】
そこで、ｔ０時点で取得した該整理券データ４は不正なもの、或いは、順番が違うもの、であると認識する。そして、正しい整理券データ４を取得した場合に書き換えていたチェック用ハッシュ値５１、及び、整理券番号カウンタ５２の書き換えは行わない。
【００９４】
前述のｔ１時点の終了時に「１」に書き換えられると、次に、１枚目と同様に、２枚目の整理券を確認するｔ２の時点では、先ず、整理券データ４から認証鍵４１として「Ｋｅｙ（２）」を取得する。そして、この「Ｋｅｙ（２）」と、ｔ１時点のチェック用ハッシュ値５１の「Ｈａｓｈ（１）」を、整理券データ４の生成時と同一のハッシュ関数へ入力すると、確認用ハッシュ値５１０として「Ｈａｓｈ（？）」が出力される。この確認用ハッシュ値５１０「Ｈａｓｈ（？）」を、整理券データ４から取得した認証用ハッシュ値４２「Ｈａｓｈ（２）」と比較する。比較の結果、両者が一致した場合は、整理券データ４の認証用ハッシュ値４２「Ｈａｓｈ（２）」は、２枚目の整理券データとして生成された正しいものであると認識可能となる。
【００９５】
また、ｔ１時点の整理券番号カウンタ５２の「１」を一だけカウントアップして、ｔ２時点の確認用整理券番号５２０として「？」を得る（ここでは、「？」は「２」である。）。この確認用整理券番号５２０「？」を、整理券データ４から取得した整理券番号４３「２」と比較する。比較の結果、両者が一致した場合は、整理券データ４の整理券番号４３「２」は、２枚目の整理券データとして生成された正しいものであると認識可能となる。
【００９６】
すなわち、ここで、整理券データ４から取得した認証鍵４１の「Ｋｅｙ（２）」、認証用ハッシュ値４２の「Ｈａｓｈ（２）」、および、整理券番号４３の「２」の値は、２枚目の整理券データ４であることが確認されることとなる。つまり、該整理券データ４は、正しい認証用データ（Ｋｅｙ（２）とＨａｓｈ（２））と正しい順番を有する正しい整理券データである、と確認できる。
【００９７】
なお、ｔ２時点で出力された「Ｈａｓｈ（？）、すなわち、Ｈａｓｈ（２）と同一」は、次のｔ３時点でのハッシュ関数への入力とするため、チェック用ハッシュ値５１の値として書き換えられる。つまり、チェック用ハッシュ値５１は、ｔ１時点の「Ｈａｓｈ（１）」が、ｔ２時点の終了時には「Ｈａｓｈ（２）」に書き換えられる。また、ｔ２時点の確認用整理券番号５２０として得られた数「？」、すなわち、「２」は、次のｔ３時点での確認用整理券番号５２０を生成するため、整理券番号カウンタ５２の値として書き換えられる。つまり、整理券番号カウンタ５２は、ｔ１時点の初期値「１」が、ｔ２時点の終了時には「２」に書き換えられる。
【００９８】
ここで、上述した確認用ハッシュ値５１０「Ｈａｓｈ（？）」と、整理券データ４から取得した認証用ハッシュ値４２「Ｈａｓｈ（２）」とを比較した結果、両者が一致しない場合は、上述したｔ１時点と同様に処理する。すなわち、整理券データ４から取得した認証用ハッシュ値４２「Ｈａｓｈ（２）」は、２枚目の整理券データとして生成されたものではない、と認識する。
【００９９】
また、上述した確認用整理券番号５２０「？」と、整理券データ４から取得した整理券番号４３の「２」とを比較した結果、両者が一致しない場合は、該整理券データ４は順番が違うものである、と認識する。
【０１００】
そこで、ｔ２時点で取得した該整理券データ４は不正なもの、或いは、順番が違うもの、であると認識する。そして、正しい整理券データ４を取得した場合に書き換えていたチェック用ハッシュ値５１、及び、整理券番号カウンタ５２の書き換えは行わない。
【０１０１】
以下同様にして、ｔ３時点で確認される整理券データ４が、認証鍵４１として「Ｋｅｙ（３）」、認証用ハッシュ値４２として「Ｈａｓｈ（３）」、整理券番号４３として「３」を有していれば、該整理券データ４は３枚目の整理券データであると確認されることとなる。なお、ｔ３時点の終了時には、チェックデータ５のチェック用ハッシュ値５１は「Ｈａｓｈ（３）」に書き換えられ、整理券番号カウンタ５２は「３」に書き換えられる。
【０１０２】
ｔ４時点以降での整理券データ４も同様にして確認されるため、整理券データの確認方法に関するこれ以上の説明は省略するものとする。
【０１０３】
次に、図７、図８を参照して、本実施形態の動作について説明する。
【０１０４】
本実施形態の動作としては、携帯端末１を整理券データ発行端末２に近づけることによって開始される整理券データの発行動作と、携帯端末１を整理券データ確認端末３に近づけることによって開始される整理券データの確認動作とがある。
【０１０５】
先ず、整理券データの発行動作について、図７を参照して説明する。
【０１０６】
図７は、本実施形態の整理券データの発行動作を説明する図である。なお、図７において図１、２、４に示す構成要素に対応するものは同一の参照数字または符号を付し、その説明を省略するものとする。
【０１０７】
先ず、携帯端末１を整理券データ発行端末２に近づけると、携帯端末１のデータ通信制御部１１と整理券データ発行端末２のデータ通信制御部２１が通信を開始する。そして、携帯端末１から整理券データの発行要求を送信すると、整理券データ発行端末２の整理券データ生成部２２が動作を開始する。
【０１０８】
整理券データ生成部２２は、記憶部２３からチェックデータ５の読込を行う（図７のステップＳ１）。
【０１０９】
次に、整理券データ生成部２２は、ランダムに生成される鍵の情報を生成し、整理券データ４の認証鍵４１に格納する（ステップＳ２）。
【０１１０】
そして、認証鍵４１とチェックデータ５のチェック用ハッシュ値５１を、本実施形態で使用するハッシュ関数に入力し、該ハッシュ関数でハッシュ値を計算する（ステップＳ３）。
【０１１１】
ステップＳ３で得たハッシュ値を、整理券データ４の認証用ハッシュ値４２に格納し、また、チェック用ハッシュ値５１を該ハッシュ値で更新する（ステップＳ４）。
【０１１２】
次に、チェックデータ５の整理券番号カウンタ５２の値を一だけカウントアップして更新し（ステップＳ５）、更新後の整理券番号カウンタ５２の値を、整理券データ４の整理券番号４３に格納する（ステップＳ６）。
【０１１３】
そして、認証鍵４１、認証用ハッシュ値４２、整理券番号４３が格納された整理券データ４を、データ通信制御部２１を介して携帯端末１に送信する。携帯端末１は、該整理券データ４を受信して記憶部１３に保存し記憶する（ステップＳ７）。
【０１１４】
また、整理券データ発行端末２の整理券データ生成部２２は、チェックデータ５のチェック用ハッシュ値５１と整理券番号カウンタ５２の値が書き換えられて更新されているため、更新後のチェックデータ５を、記憶部２３に保存し記憶し直す（ステップＳ８）。
【０１１５】
以上の動作により、携帯端末１に対して整理券データ４が発行される。この整理券データ４には、最終的に発行された整理券データ４の発行順を示す番号（整理券番号４３）が含まれる。また、発行された整理券番号４３に対してランダムに生成された認証鍵４１、および、１つ前の時点のチェック用ハッシュ値５１と認証鍵４１より生成された認証用ハッシュ値４２が含まれることとなる。
【０１１６】
次に、整理券データの確認動作について、図８を参照して説明する。
【０１１７】
図８は、本実施形態の整理券データの確認動作を説明する図である。なお、図８において図１、２、４に示す構成要素に対応するものは同一の参照数字または符号を付し、その説明を省略するものとする。
【０１１８】
先ず、携帯端末１を整理券データ確認端末３に近づけると、携帯端末１のデータ通信制御部１１と整理券データ確認端末３のデータ通信制御部３１が通信を開始する。そして、整理券データ確認端末３の整理券データ確認部３２が動作を開始する。
【０１１９】
整理券データ確認部３２は、データ通信制御部３１を介して、携帯端末１に対し、整理券データの読み出し要求を送信する。整理券データの読み出し要求を受信した携帯端末１は、自身の記憶部１３に格納されている整理券データを、データ通信制御部１１を介して整理券データ確認端末３に送信する。整理券データ確認端末３は、該整理券データを受信し、整理券データ確認部３２に取り込む（図８のステップＳ１１）。
【０１２０】
そして、整理券データ確認部３２は、記憶部３３からチェックデータ５の読込みを行う（ステップＳ１２）。
【０１２１】
次に、整理券データ確認部３２は、携帯端末１から受信した整理券データ４の認証鍵４１を取得する。そして、認証鍵４１とチェックデータ５のチェック用ハッシュ値５１を、本実施形態で使用するハッシュ関数に入力し、該ハッシュ関数でハッシュ値を計算し、確認用ハッシュ値５１０を得る（ステップＳ１３）。該ハッシュ関数は、図７で説明した整理券データ発行時に使用したものと同一である。また、確認用ハッシュ値５１０は、図６で説明した整理券データの確認時に用いるハッシュ値である。
【０１２２】
そして、ステップＳ１３で得た確認用ハッシュ値５１０と、整理券データ４の認証用ハッシュ値４２が一致するか比較し、比較結果を表示部３４に表示する（ステップＳ１４）。比較結果が一致の場合は、整理券データ４の認証用ハッシュ値４２は、正しく生成されたハッシュ値であると認識する。比較結果が不一致の場合は、当該認証用ハッシュ値４２は正しく生成されたハッシュ値ではないと認識する。
【０１２３】
また、整理券データ確認部３２は、チェックデータ５の整理券番号カウンタ５２の値を一だけカウントアップして、確認用整理券番号５２０を得る（ステップＳ１５）。該確認用整理券番号５２０は、図６で説明した整理券データの確認時に用いる値である。
【０１２４】
そして、ステップＳ１５で得た確認用整理券番号５２０と、整理券データ４の整理券番号４３が一致するか比較し、比較結果を表示部３４に表示する（ステップＳ１６）。比較結果が一致の場合は、整理券データ４の整理券番号４３は、正しく生成された順番の番号であると認識する。比較結果が不一致の場合は、当該整理券番号４３は正しい順番を示すものではないと認識する。
【０１２５】
次に、整理券データ確認端末３の整理券データ確認部３２は、ステップＳ１４での認証用ハッシュ値４２とステップＳ１６での整理券番号４３とが共に正しいと認識された場合に、当該整理券データ４は正しく生成された正しい順番を有する整理券データであると認識する。ここで、携帯端末１が有していた整理券データ４は、正しい認証用データ（認証鍵４１と認証用ハッシュ値４２）と正しい順番の整理券番号４３を有する正しいものである、と確認されたこととなる。
【０１２６】
そして、整理券データ確認部３２は、携帯端末１に対して、データ通信制御部３１を介して移動端末１内の整理券データの削除要求を送信する（ステップＳ１７）。削除要求を受信した携帯端末１は、自身の記憶部１３内に記憶していた整理券データの削除を行う。
【０１２７】
また、整理券データ確認部３２は、次の整理券データの確認に用いるため、ステップＳ１３で得た確認用ハッシュ値５１０を、チェックデータ５のチェック用ハッシュ値５１として書き換える。また、ステップＳ１５で得た確認用整理券番号５２０を、チェックデータ５の整理券番号カウンタ５２として書き換える。そして、書き換えたチェックデータ５を、記憶部３３に保存し記憶し直す（ステップＳ１８）。
【０１２８】
以上の動作により、記憶部３３に保存されるチェックデータ５は、常に、確認が完了した最後の整理券番号（整理券番号カウンタ５２の値）と、その整理券番号における認証用ハッシュ値（チェック用ハッシュ値５１の値）を保持することとなる。
【０１２９】
なお、整理券データ確認端末３の整理券データ確認部３２が、ステップＳ１４での認証用ハッシュ値４２、或いは、ステップＳ１６での整理券番号４３の何れかが正しくない、と認識した場合には、以下のように処理する。すなわち、当該整理券データ４は正しくないもの、と認識したため、整理券データ確認部３２で保持している整理券データ４およびチェックデータ５を破棄し、処理を終了する。
【０１３０】
次に、図９〜図１２を参照して、本実施形態の具体例について説明する。なお、図９〜図１２においては、図４で説明した整理券データ４とチェックデータ５も図示している。しかし、図の見易さを図る為、構成要素の名称の図示にとどめ、参照番号の図示は省略するものとする。
【０１３１】
図９は、本実施形態の具体例の全体を説明する図である。
【０１３２】
図９の（具体例１）は、整理券データの発行時を例示するものであり、Ａさん、Ｂさん、Ｃさんの３人が順番を形成し、整理券データ発行端末２で発行された整理券データを、自身の携帯端末に入手する場合を例示するものである。
【０１３３】
（具体例２）は、整理券データの確認時を例示するものであり、（具体例１）で発行されたのと同一の順番の整理券データを、整理券データ確認端末３が確認する場合を例示するものである。
【０１３４】
（具体例３）も、整理券データの確認時を例示するものであるが、（具体例１）で発行されたのと異なる順番の整理券データを、整理券データ確認端末３が確認する場合を例示するものである。
【０１３５】
次に、図１０を参照して、本実施形態の具体例１として、整理券データの発行時の動作について説明する。
【０１３６】
図１０は、本実施形態の具体例１（発行時）の動作を説明する図である。
【０１３７】
はじめに、Ａさんが整理券データ発行端末２に、Ａさんの携帯端末を接近させると、整理券データ発行端末２のチェックデータ５−１を元にして生成された整理券データ４−１が、Ａさんの携帯端末に発行される。
【０１３８】
ここで、整理券データ４−１の認証用ハッシュ値（Ｈａｓｈ（１））は、図３（２）３２０１の行で示したように、ハッシュ関数ｆ（Ｈａｓｈ（０）、Ｋｅｙ（１））により生成されるハッシュ値である。また、整理券番号（「１」）は、チェックデータ５−１の整理券番号カウンタの値「０」を一だけカウントアップして得た値である。
【０１３９】
また、整理券データ４―１の発行と同時に、整理券データ発行端末２のチェックデータ５−１が、チェックデータ５−２に書き換えられ、整理券データ発行端末２内に格納される。
【０１４０】
同様に、Ｂさんが整理券データ発行端末２に、Ｂさんの携帯端末を接近させると、整理券データ発行端末２のチェックデータ５−２を元にして生成された整理券データ４−２が、Ｂさんの携帯端末に発行される。
【０１４１】
ここで、整理券データ４−２の認証用ハッシュ値（Ｈａｓｈ（２））は、図３（２）３２０２の行で示したように、ハッシュ関数ｆ（Ｈａｓｈ（１）、Ｋｅｙ（２））により生成されるハッシュ値である。また、整理券番号（「２」）は、チェックデータ５−２の整理券番号カウンタの値「１」を一だけカウントアップして得た値である。
【０１４２】
また、整理券データ４―２の発行と同時に、整理券データ発行端末２のチェックデータ５−２が、チェックデータ５−３に書き換えられ、整理券データ発行端末２内に格納される。
【０１４３】
さらに、Ｃさんが整理券データ発行端末２に、Ｃさんの携帯端末を接近させると、整理券データ発行端末２のチェックデータ５−３を元にして生成された整理券データ４−３が、Ｃさんの携帯端末に発行される。また、整理券データ４−３の発行と同時に、整理券データ発行端末２のチェックデータ５−３が、チェックデータ５−４に書き換えられる。
【０１４４】
以上の動作により、Ａさん、Ｂさん、Ｃさんに対し、それぞれ、整理券データ４−１、４−２、４−３が発行されることとなる。
【０１４５】
次に、図１１を参照して、本実施形態の具体例２として、整理券データの確認時の動作について説明する。
【０１４６】
図１１は、本実施形態の具体例２（確認時（正しい順番））の動作を説明する図である。
【０１４７】
はじめに、Ａさんが整理券データ確認端末３に、Ａさんの携帯端末を接近させると、整理券データ確認端末３は、Ａさんの携帯端末から整理券データ４−１を受信する。
【０１４８】
そして、整理券データ確認端末３は、整理券データ４−１に含まれる認証鍵（Ｋｅｙ（１））と、チェックデータ５−１１のチェック用ハッシュ値（Ｈａｓｈ（０））から、
図６で説明した確認用ハッシュ値（Ｈａｓｈ（？）、すなわち、Ｈａｓｈ（１）と同一）を計算する。また、チェックデータ５−１１の整理券番号カウンタの値「０」を一だけカウントアップして、図６で説明した確認用整理券番号（「？」、すなわち、「１」と同一）を計算する。この確認用ハッシュ値（Ｈａｓｈ（１））と確認用整理券番号（「１」）は、図１１では確認用データ６−１として示している。
【０１４９】
整理券データ確認端末３は、整理券データ４−１の認証用ハッシュ値（Ｈａｓｈ（１））と、確認用データ６−１の確認用ハッシュ値（Ｈａｓｈ（１））とを比較する。また、整理券データ４−１の整理券番号（「１」）と、確認用データ６−１の確認用整理券番号（「１」）とを比較する。
【０１５０】
比較を行うと、認証用ハッシュ値（Ｈａｓｈ（１））と確認用ハッシュ値（Ｈａｓｈ（１））とが一致する。また、整理券番号（「１」）と確認用整理券番号（「１」）とが一致する。そこで、Ａさんの整理券データ４−１は、正しく生成された正しい整理券データであると認証される。従って、Ａさんの順番が正しい、と認証される。
【０１５１】
認証の後、確認用データ６−１は、次の整理券データの確認時に使用するため、元のチェックデータ５−１１を書き換え、チェックデータ５−１２として整理券データ確認端末３内に格納される。
【０１５２】
Ａさんと同様に、Ｂさんの場合も、チェックデータ５−１２を元に確認用データ６−２を計算する。確認用データ６−２は、Ｂさんの整理券データ４−２と一致するため、Ｂさんの順番は正しい、と認証される。確認用データ６−２はチェックデータ５−１３として書き換えられ更新される。
【０１５３】
Ｃさんの場合も同様に、チェックデータ５−１３を元に確認用データ６−３を計算する。確認用データ６−３は、Ｃさんの整理券データ４−３と一致するため、Ｃさんの順番も正しい、と認証される。確認用データ６−３はチェックデータ５−１４として書き換えられ更新される。
【０１５４】
以上の動作により、Ａさん、Ｂさん、Ｃさんの順番は、整理券データを発行した通りの順番である、ことが確認されたこととなる。
【０１５５】
次に、図１２を参照して、本実施形態の具体例３として、整理券データの確認時の動作について説明する。具体例３は、整理券データの確認順序が、整理券データの発行順序と異なる場合の動作を説明するものである。
【０１５６】
図１２は、本実施形態の具体例３（確認時（順番が入れ替わった場合））の動作を説明する図である。
【０１５７】
はじめに、Ａさんが整理券データ確認端末３に、Ａさんの携帯端末を接近させると、整理券データ確認端末３は、Ａさんの携帯端末から整理券データ４−１を受信する。
【０１５８】
この場合、Ａさんの整理券データ４−１は、図１１の具体例２の場合と同様であるため、整理券データ確認端末３は、具体例２と同一の動作を行う。従って、Ａさんの順番は正しい、と認証される。
【０１５９】
Ａさんの次に、（Ｂさんでなく）Ｃさんが整理券データ確認端末３に、Ｃさんの携帯端末を接近させると、整理券データ確認端末３は、Ｃさんの携帯端末から整理券データ４−３を受信する。
【０１６０】
そして、整理券データ確認端末３は、整理券データ４−３に含まれる認証鍵（Ｋｅｙ（３））と、チェックデータ５−１２のチェック用ハッシュ値（Ｈａｓｈ（１））から、図６で説明した確認用ハッシュ値（Ｈａｓｈ（？））を計算する。また、チェックデータ５−１２の整理券番号カウンタの値「１」を一だけカウントアップして、図６で説明した確認用整理券番号（「？」、すなわち、「２」と同一）を計算する。この確認用ハッシュ値（Ｈａｓｈ（？））と確認用整理券番号（「２」）は、図１２では確認用データ６−２０として示している。
【０１６１】
整理券データ確認端末３は、整理券データ４−３の認証用ハッシュ値（Ｈａｓｈ（３））と、確認用データ６−２０の確認用ハッシュ値（Ｈａｓｈ（？））とを比較する。また、整理券データ４−３の整理券番号（「３」）と、確認用データ６−２０の確認用整理券番号（「２」）とを比較する。
【０１６２】
比較した結果、認証用ハッシュ値（Ｈａｓｈ（３））と確認用ハッシュ値（Ｈａｓｈ（？））とは一致しない。また、整理券番号（「３」）と確認用整理券番号（「２」）とは一致しない。そこで、Ｃさんの整理券データ４−３は、確認の順番が誤っているものである、と認識される。ここで、Ｃさんの順番の誤りが検出されたこととなる。
【０１６３】
ここで、Ｃさんの順番確認のために生成された確認用データ６−２０は破棄する。そして、Ｃさんの順番確認のために用いられたチェックデータ５−１２は、更新されず、次の整理券データの確認のためにそのまま整理券データ確認端末３内に保存される（図１２では、参照番号を変えて、チェックデータ５−１５と記述している。）。
【０１６４】
次に、Ｃさんの後に、Ｂさんが整理券データ確認端末３に、Ｂさんの携帯端末を接近させると、整理券データ確認端末３は、Ｂさんの携帯端末から整理券データ４−２を受信する。
【０１６５】
そして、整理券データ確認端末３は、整理券データ４−２に含まれる認証鍵（Ｋｅｙ（２））と、チェックデータ５−１５のチェック用ハッシュ値（Ｈａｓｈ（１））から、確認用ハッシュ値（Ｈａｓｈ（？）、すなわち、Ｈａｓｈ（２）と同一）を計算する。また、チェックデータ５−１５の整理券番号カウンタの値「１」を一だけカウントアップして、確認用整理券番号（「？」、すなわち、「２」と同一）を計算する。この確認用ハッシュ値（Ｈａｓｈ（２））と確認用整理券番号（「２」）は、図１２では確認用データ６−２として示している。
【０１６６】
整理券データ確認端末３は、整理券データ４−２の認証用ハッシュ値（Ｈａｓｈ（２））と、確認用データ６−２の確認用ハッシュ値（Ｈａｓｈ（２））とを比較する。また、整理券データ４−２の整理券番号（「２」）と、確認用データ６−２の確認用整理券番号（「２」）とを比較する。
【０１６７】
比較を行うと、認証用ハッシュ値（Ｈａｓｈ（２））と確認用ハッシュ値（Ｈａｓｈ（２））とが一致する。また、整理券番号（「２」）と確認用整理券番号（「２」）とが一致する。そこで、Ｂさんの整理券データ４−２は、正しく生成された正しい整理券データであると認証される。従って、Ａさんの次にＣさんが入っていたが、Ｃさんは正しい順番ではなかったため、Ｃさんが入らないのと同様の処理がなされ、その結果、Ｂさんの順番は正しい、と認証される。
【０１６８】
Ｂさんの認証の後、確認用データ６−２は、次の整理券データの確認時に使用するため、元のチェックデータ５−１５を書き換え、チェックデータ５−１６として整理券データ確認端末３内に格納される。
【０１６９】
以上の動作により、整理券データを発行した順番通りでなく、異なる順番で整理券データの確認が行われた場合、その順番の誤りを検出することができる。
【０１７０】
以上、本実施形態の構成および動作につき詳細に説明した。
【０１７１】
上述したように、本実施形態の電子整理券発行確認システムは、整理券データ（すなわち、電子整理券）に、整理券番号と、認証用データ（認証鍵、認証用ハッシュ値）を記載するようにしている。また、整理券データの発行端末および確認端末は、整理券データの発行時および確認時に使用するチェックデータ（チェック用ハッシュ値、整理券番号カウンタ）を保持している。
【０１７２】
そして、整理券データの整理券番号は、チェックデータ内の整理券番号カウンタの値から生成するようにしている。また、整理券データの認証用ハッシュ値は、該整理券データごとに生成される認証鍵と、１つ前の整理券データの生成時に使用したチェック用ハッシュ値とを、本実施形態で使用するハッシュ関数に入力することにより生成するようにしている。
【０１７３】
このように、本実施形態においては、認証用データを記載した整理券データを発行し、確認時に認証用データを用いて、整理券番号の順番の正しさ、および、整理券データ自体の正しさを認証するようにしている。従って、整理券番号の確認の機械化を行うことが可能となる。また、整理券データの正当性を認証することが可能となる。
【０１７４】
そして、認証用データはハッシュ関数を用いて生成するようにしている。従って、整理券データの偽造を防止することが可能となり、偽造による成りすましを防ぐことが可能となる。
【０１７５】
次に、図１３を参照して、本発明の第２の実施の形態について説明する。
【０１７６】
図１３は、本発明の電子整理券発行確認システムの第２の実施形態を示すブロック図である。
【０１７７】
図１３に示す第２の実施の形態は、整理券データ（すなわち、電子整理券）を記憶保持するＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：集積回路）カード１−１と、整理券データを発行する整理券データ発行端末２−１と、整理券データの認証と整理券の順番の確認を行う整理券データ確認端末３−１と、から構成されている。
【０１７８】
ＩＣカード１−１は、整理券データ発行端末２−１に対して整理券データの発行要求を送信し、整理券データ発行端末２−１が発行した整理券データを、近距離無線通信によって受信し、内部の記憶装置に記憶させ保持する機能を備えている。また、内部に記憶保持している整理券データを、近距離無線通信によって整理券データ確認端末３−１に送信する機能を備えている。
【０１７９】
整理券データ発行端末２−１は、整理券データを発行して、近距離無線通信によってＩＣカード１−１に送信する機能を備えている。
【０１８０】
整理券データ確認端末３−１は、ＩＣカード１−１が記憶保持している整理券データを、近距離無線通信によって受信し、該整理券データの認証と整理券の順番の確認を行う機能を備えている。
【０１８１】
ＩＣカード１−１は、カード内にＩＣチップを搭載しており、外部読取機（整理券データ発行端末２−１、整理券データ確認端末３−１、など）との間で情報交換、すなわち、整理券データの送受信、を行う。そして、内蔵するアンテナにより微弱な電波を使用した近距離無線通信によって、外部読取機と非接触型での通信を行う。通信方式としては、例えば、ＮＦＣ（Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ：エヌエフシー）を挙げることができる。
【０１８２】
なお、ＩＣカード１−１は、上述した機能を備えるＲＦＩＤ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ：アールエフアイディー）タグ、或いは、他の方式の無線ＩＣタグに代えたものであってもよい。或いは、携帯電話、ＰＨＳ端末、ＰＤＡなどに、上述のＩＣチップ（或いは、ＲＦＩＤタグ、無線ＩＣタグ、など）を追加して搭載する構成のものであってもよい。
【０１８３】
上述したように、本発明の第２の実施形態は、第１の実施形態の携帯端末１を、ＩＣカード１−１に置き換えたものである。
【０１８４】
そして、整理券データ発行端末２−１は、第１の実施形態の整理券データ発行端末２のデータ通信制御部２１を、ＩＣカード１−１との通信を可能とするものに変更した点でのみ異なるものである。また、整理券データ確認端末３−１は、第１の実施形態の整理券データ確認端末３のデータ通信制御部３１を、ＩＣカード１−１との通信を可能とするものに変更した点でのみ異なるものである。
【０１８５】
すなわち、本発明の第２の実施形態は、第１の実施形態と比べ、上述した構成でのみ異なるものである。そして、第２の実施形態の動作は、第１の実施形態における動作とまったく同一である。
【０１８６】
従って、第２の実施形態について、これ以上の説明は省略するものとする。
【０１８７】
以上説明したように、本発明の第２の実施形態では、簡便な構成のＩＣカードを用いているため、簡便な構成の電子整理券発行確認システムを構築することが可能となる。
【図面の簡単な説明】
【０１８８】
【図１】本発明の電子整理券発行確認システムの一実施形態を示すブロック図である。
【図２】図１の電子整理券発行確認システムの一例を示す詳細ブロック図である。
【図３】ハッシュ関数の一例を示す図である。
【図４】整理券データとチェックデータの構成の一例を示す図である。
【図５】整理券データの生成方法を説明する図である。
【図６】整理券データの確認方法を説明する図である。
【図７】本実施形態の整理券データの発行動作を説明する図である。
【図８】本実施形態の整理券データの確認動作を説明する図である。
【図９】本実施形態の具体例の全体を説明する図である。
【図１０】本実施形態の具体例１（発行時）の動作を説明する図である。
【図１１】本実施形態の具体例２（確認時（正しい順番））の動作を説明する図である。
【図１２】本実施形態の具体例３（確認時（順番が入れ替わった場合））の動作を説明する図である。
【図１３】本発明の電子整理券発行確認システムの第２の実施形態を示すブロック図である。
【符号の説明】
【０１８９】
１    携帯端末
１−１    ＩＣカード
１１    データ通信制御部
１２    制御部
１３    記憶部
２    整理券データ発行端末
２−１    整理券データ発行端末
２１    データ通信制御部
２２    整理券データ生成部
２３    記憶部
３    整理券データ確認端末
３−１    整理券データ確認端末
３１    データ通信制御部
３２    整理券データ確認部
３３    記憶部
３４    表示部
４    整理券データ
４１    認証鍵
４２    認証用ハッシュ値
４３    整理券番号
５    チェックデータ
５１    チェック用ハッシュ値
５２    整理券番号カウンタ
【図１】
2008092420.tif 000003
【図２】
2008092420.tif 000004
【図３】
2008092420.tif 000005
【図４】
2008092420.tif 000006
【図５】
2008092420.tif 000007
【図６】
2008092420.tif 000008
【図７】
2008092420.tif 000009
【図８】
2008092420.tif 000010
【図９】
2008092420.tif 000011
【図１０】
2008092420.tif 000012
【図１１】
2008092420.tif 000013
【図１２】
2008092420.tif 000014
【図１３】
2008092420.tif 000015