(57)【要約】      （修正有）【課題】発行局が発行した券を保持する端末を特定できず、かつ、発行局から券を発行された端末以外でその券の利用ができないような券検証システムを提供する。【解決手段】券検証システムは券を発行する発行局と、発行局から取得した券を利用する携帯端末と、携帯端末から取得した券を検証した結果に応じて券の利用許可を携帯端末に対して与える検証装置とを含み、携帯端末は、発行局から送信された乱数値と、端末の固有値とに基づいて端末において行われた演算の結果を特定する第１情報とを含む券を発行局から取得し、検証装置に送信した券に含まれる乱数値を検証装置から受信し、取得した乱数値と端末の固有値とに基づいて、端末において行われた演算の結果を特定する第２情報を検証装置に送信し、第２情報と第１情報との一致により、券の利用が可能となるようにする。【選択図】図５
2014175728.tif 000002
【特許請求の範囲】
【請求項１】
券を発行する発行局と、該発行局から取得した券を利用する端末と、該端末から取得した券を検証した結果に応じて該券の利用許可を該端末に対して与える検証装置とを含む券検証システムにおいて、
前記端末は、
前記発行局から送信された乱数値と前記端末の固有値とに基づいて該端末において行われた演算の結果を特定する第１情報と、該乱数値とを含む券を該発行局から取得する券取得部と、
前記端末から前記検証装置への前記券の送信に対する応答として前記券に含まれる乱数値を該検証装置から受信する乱数値受信部と、
前記検証装置から受信した前記乱数値と前記端末の固有値とに基づいて、該端末において行われた演算の結果を特定する第２情報を前記検証装置に送信する送信部とを有し、
前記第２情報と前記第１情報との一致が検証できた場合に、前記券の利用が可能となるようにしたことを特徴とする券検証システム。
【請求項２】
前記検証は、前記検証装置によって行われることを特徴とする請求項１記載の券検証システム。
【請求項３】
前記端末は、
前記検証を行なった検証結果を前記検証装置に送信する券検証部を有することを特徴とする請求項１記載の券検証システム。
【請求項４】
前記乱数値受信部は、前記検証装置から該検証装置で生成された第２乱数値を受信し、
前記送信部は、前記第２乱数値と、前記端末の所定値とを用いた演算の結果を特定する第３情報を生成して前記検証装置に送信することによって、
前記携帯端末が検証されるようにしたことを特徴とする請求項２記載の券検証システム。
【請求項５】
前記検証装置は、
前記端末から前記券を取得すると、端末用乱数値を生成して該端末へ送信する乱数値生成・送信部と、
前記端末用乱数値の前記端末への送信に応じて、生成された該端末用乱数値と該端末の所定値とに基づいて該端末によって生成された端末用端末生成値を該端末から受信すると、該端末用乱数値と、前記生成した端末用端末生成値との組による端末認証子を該端末を検証する端末検証局へ送信して、該端末検証局から端末検証結果を受信する端末本物確認部とを有し、
前記端末検証結果が前記端末が本物であることを検証できた場合、前記券を検証することを特徴とする請求項４記載の券検証システム。
【請求項６】
券を発行する発行局と、該発行局から取得した券を利用する端末と、該端末から取得した券を検証した結果に応じて該券の利用許可を該端末に対して与える検証装置とを含む券検証システムにおける券検証方法において、
前記端末は、
前記発行局から送信された乱数値と前記端末の固有値とに基づいて該端末において行われた演算の結果を特定する第１情報と、該乱数値とを含む券を該発行局から取得し、
前記端末から前記検証装置への前記券の送信に対する応答として前記券に含まれる乱数値を該検証装置から受信し、
前記検証装置から受信した前記乱数値と前記端末の固有値とに基づいて、該端末において行われた演算の結果を特定する第２情報を前記検証装置に送信し、
前記第２情報と前記第１情報との一致が検証できた場合に、前記券の利用が可能となるようにしたことを特徴とする券検証方法。
【請求項７】
券の発行に係る乱数値を端末に送信する乱数値生成・送信部と、
前記端末によって前記乱数値と前記端末の固有値とに基づいて生成された第１情報を該端末から受信すると、前記乱数値生成・送信部によって該端末に送信した乱数値と該受信した第１情報との組による券認証子に自局の署名を付加した券を発行して、該端末に送信する署名付券発行部と
を有することを特徴とする発行局。
【請求項８】
発行局から送信された第１乱数値と、端末の固有値とを記憶する記憶部と、
前記記憶部に記憶された前記第１乱数値と前記端末の固有値とに基づいて生成した第１情報を、前記発行局へ送信する送信部と、
前記発行局から前記第１乱数値と前記第１情報との組による券認証子を含む券を受信して前記記憶部に記憶する券受信部と、
前記記憶部に記憶された前記券を、該券を検証する検証装置に送信して、該券に含まれる第１乱数値を受信する乱数値受信部と、
前記受信した第１乱数値と、前記端末の固有値とを用いた演算の結果を特定する第２情報を生成して、前記検証装置に送信する送信部とを有し、
前記検証装置によって前記第２情報と前記第１情報との一致が検証されることを特徴とする携帯端末。
【請求項９】
券用乱数値と、該券用乱数値と端末の固有値とに基づいて該端末において行われた演算の結果を特定する第１情報との組による券認証子で特定される券を保持した端末から、該券を取得し該券に与えられた券認証子を取り出して、該券認証子に含まれる券用乱数値を取得して該端末へ送信する券認証子取出部を有し、
前記送信した券用乱数値と該端末の固有値とを用いた前記端末によって行われた演算の結果を特定する第２情報と、前記券の券認証子に含まれる前記第１情報とが一致するか否かによって、券が検証されることを特徴とする検証装置。
【請求項１０】
端末の正当性を検証する端末検証局であって、
外部装置から、端末用乱数値と、前記端末によって該端末用乱数値と該端末が保持する所定値とに基づいて生成された端末用端末生成値との組による端末認証子を受信すると、前記端末検証局の所定値との一致を検証する端末認証子検証部
を有することを特徴とする端末検証局。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、発行した券の適正使用を検証する券検証システム、券検証方法等に関する。
【背景技術】
【０００２】
近年、ユーザが所望のサービスを受けるためのチケット、クーポン等をデジタル化した券が、ユーザに発行されるようになってきている。ユーザは、発行された券を携帯端末等の情報処理端末に保持し、利用時にはサービス提供者側に備えられた読取装置に、情報処理端末に保持した券を読み取らせることによって、所望のサービスを受けることができる。
【０００３】
チケットの不正利用を困難とする一方、チケットの内容を第三者に証明でき、かつ、チケット利用者の匿名性を維持するために、検証器は、チケットの識別子ｎと生成した乱数Ｃとを証明器へ送信し、証明器が識別子ｎに対応するチケットからチケット秘密情報Ｄを取得する。証明器が乱数Ｃとチケット秘密情報Ｄとを用いて計算した値Ｒを、検証器に送信する。検証器は、値Ｒとチケット公開情報Ｅとから乱数Ｃを生成して、証明器へ送信した乱数Ｃとの比較によってチケットを検証すること等が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−３１２０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
デジタル化した券の利用形態として、店が顧客の囲い込みを目的としたクーポン（電子クーポン）を発行することがある。クーポンには、顧客が店で商品を購入又はサービスを享受した際に支払ったことを示すレシートを持参した場合に、次回の利用時の対価から１００円引きとする、まとめて商品を購入すると割安となる回数券等がある。
【０００６】
店側は、このような顧客に対して発行したクーポンを顧客本人に利用してほしい場合がある。即ち、店側は、顧客に発行したクーポンを他人に譲渡して欲しくなく、クーポンの利用者がその顧客本人であることを知りたいという要望がある。つまり、店側は、顧客個人を特定できなくても良いが、利用者がクーポンを発行した際の顧客本人であることを確認したい。一方、顧客は店に個人情報を知らせたくないと考えている。
【０００７】
上述した技術では、正当なチケットであることを検証でき、かつ、チケット利用者の匿名性を可能とするため、店は、店側がクーポンを発行した顧客本人による利用であるのかを知ることができない。
【０００８】
また、上述した技術では、チケット発行部と証明器固有情報保持手段の両方がチケット作成・発行局にあるため、どの利用者にどのチケットを発行したかと言った店の販促情報等をチケット作成・発行局が知ることができてしまう。
【０００９】
１つの側面において、本発明の目的は、顧客の個人情報を利用することなく、クーポンの利用者がクーポンを発行した顧客本人であるか否かを確認可能とすることである。
【課題を解決するための手段】
【００１０】
本実施例の一態様によれば、券を発行する発行局と、該発行局から取得した券を利用する端末と、該端末から取得した券を検証した結果に応じて該券の利用許可を該端末に対して与える検証装置とを含む券検証システムにおいて、前記端末は、前記発行局から送信された乱数値と前記端末の固有値とに基づいて該端末において行われた演算の結果を特定する第１情報と、該乱数値とを含む券を該発行局から取得する券取得部と、前記端末から前記検証装置への前記券の送信に対する応答として前記券に含まれる乱数値を該検証装置から受信する乱数値受信部と、前記検証装置から受信した前記乱数値と前記端末の固有値とに基づいて、該端末において行われた演算の結果を特定する第２情報を前記検証装置に送信する送信部とを有し、前記第２情報と前記第１情報との一致が検証できた場合に、前記券の利用が可能となるようにできる。
【発明の効果】
【００１１】
本実施例の一態様によれば、乱数値と端末にて該乱数値と秘密値とから所定演算で生成した値との組を含む券を発行し、端末に発行後の券の乱数値で該演算を行わせる検証によって、券発行の端末特定を不可能とし、該端末以外での利用も抑止できる。
【図面の簡単な説明】
【００１２】
【図１】券検証システムの概略構成を示す図である。
【図２】第１の関連技術を説明するための図である。
【図３】第１の関連技術の問題点を説明するための図である。
【図４】第２の関連技術を説明するための図である。
【図５】第１実施例における券検証システムの構成例を示す図である。
【図６】第１実施例におけるクーポン発行の構成例を示す図である。
【図７】第１実施例におけるクーポン検証の構成例を示す図である。
【図８】クーポンのデータ構成例を示す図である。
【図９】第２実施例におけるクーポン発行の構成例を示す図である。
【図１０】第２実施例におけるクーポン発行処理を説明するためのフローチャート図である。
【図１１】第２実施例におけるクーポン検証の構成例を示す図である。
【図１２】第２実施例におけるクーポン検証の処理シーケンスを示す図である。
【図１３】第３実施例におけるクーポン検証の構成例を示す図である。
【図１４】第３実施例における携帯端末による端末認証子生成処理を説明するためのフローチャート図である。
【図１５】第３実施例における携帯端末検証局による携帯端末検証処理を説明するためのフローチャート図である。
【図１６】第４実施例におけるクーポン検証の構成例を示す図である。
【図１７】乱数値の生成する方法２を説明するための図である。
【図１８】コンピュータ装置のハードウェア構成を示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態を図面に基づいて説明する。図１は、券検証システムの概略構成を示す図である。図１において、券検証システム１００は、携帯端末１と、発行局５と、検証装置７とを有する。
【００１４】
携帯端末１は、例えば、発行局５とネットワークを介して通信可能なネットワーク通信機能を有する携帯電話機等の携帯型の情報処理端末である。ユーザ１ｕは、サービス提供者７ｓから商品又はサービスを購入した顧客であり、携帯端末１は、ユーザ１ｕによって所持される携帯電話機等である。
【００１５】
発行局５は、コンピュータ装置であり、サービス提供者７ｓのクーポンの発行要求に応じて、サービス提供者７ｓによって特定されたユーザｕにクーポン２を発行する装置である。クーポン２は、デジタル化された電子クーポンであり、ネットワークを介して、ユーザ１ｕの携帯端末１に提供される。提供されたクーポン２は、携帯端末１の記憶領域に保持される。
【００１６】
検証装置７は、コンピュータ装置であり、店に設置され、携帯端末１から読み取ったクーポン２を検証する。ユーザ１ｕが店で商品をクーポン２で購入する際に、携帯端末１に保持されたクーポン２が検証装置７で読み取られ検証される。
【００１７】
検証によりクーポン２が利用可能と判断されると、ユーザ１ｕは、クーポン２で指定されるサービス３を利用して商品を購入できる。クーポン２で指定されたサービス３がサービス提供者７によって、ユーザ１ｕに対して行われる。
【００１８】
サービス提供者７ｓは、クーポン２を検証してユーザ１ｕに適切なサービスを提供する。また、サービス提供者７ｓは、検証装置７を用いてクーポン２の正当性を検証するため検証者とも言える。
【００１９】
商品の支払い時等の会計時にクーポン２の検証をする形態では、例えばレジ機能を有するコンピュータ装置に、検証装置７に相当する検証機能を有するように構成される。
【００２０】
このようなサービス提供形態において、本実施の形態では、以下の条件１及び２を同時に満たす券検証システムを提供する。
条件１：クーポン２を発行する発行局５と検証者７ｓは、ユーザ１ｕ個人を特定する情報を得ることができないこと。ユーザ１ｕが携帯する携帯端末１を特定できないことを含む。
条件２：ユーザ１ｕ本人以外はクーポン２を使用できないこと。
【００２１】
券検証システム１００では、下記の状況を前提とする。
（１）ユーザ１ｕとユーザ１ｕの携帯端末１は信頼できるものとそうでないものとがある。
（２）持ち主（ユーザ１ｕ）だけが携帯端末１を利用できる。
（３）携帯端末１、即ち、ユーザ１ｕに対してクーポン２が発行される。
（４）クーポン２の発行対象となる携帯端末１（ユーザ１ｕ）は、発行局５と検証装置７の意図通りに動作する携帯端末１（ユーザ１ｕ）のみである。
（５）クーポン２の発行局５とサービス提供者（検証者）７ｓ（及び検証装置７）には信頼できるものとそうでないものがあるが、ユーザ１ｕと携帯端末１にはその区別はできない。例えば、信頼できない検証者（偽検証者）が、検証時に受け取ったクーポンを、検証装置を用いて信頼できない発行局（偽発行局）に送信することによって、別のユーザに発行する可能性がある。
【００２２】
本実施の形態の説明前に、クーポンの発行と検証に関する関連技術について図２、図３、図４で説明する。図２は、第１の関連技術を説明するための図である。図２に示す券検証システム９ａでは、発行局Ｐと携帯端末１との間で端末認証が成功すると、発行局Ｐの署名付きクーポン２１が携帯端末１に送信される。
【００２３】
ユーザ１ｕは、携帯端末１に保持した発行局Ｐの署名付きクーポン２１をサービス提供者７ｓに提示することによって、即ち、検証装置７が携帯端末１からクーポン２１を読み取ることによって、署名付きクーポン２１が検証される。検証により正当性が確認されると、サービス提供者７ｓはサービスをユーザ１ｕに提供する。
【００２４】
この第１の関連技術では、クーポン２１の発行局Ｐ、検証装置７、及びサービス提供者（検証者）７ｓにユーザ１ｕの個人情報が渡ることはないが、クーポン対象者以外の人もクーポン２１を利用できる。従って、上述した条件１を満たすが、条件２を満たさない。
【００２５】
図３は、第１の関連技術の問題点を説明するための図である。図３に示す券検証システム９ｂでは、図２の第１の関連技術において、サービス提供者（検証者）７ｓ及び検証装置７が正当なものでない場合の例を示している。
【００２６】
クーポン２１は、正当な発行局Ｐにより信頼できる鈴木さんの携帯端末１−１に発行局Ｐの署名付きで発行される。鈴木さんは、偽サービス提供者（偽検証者）７ｓ−２からサービスを受けるため、携帯端末１−１に保持したクーポン２１を偽検証装置７−２で読み取らせる。
【００２７】
偽検証装置７−２によって、読み取った発行局Ｐの署名付きクーポン２１を偽発行局ＦＰへ提供され、クーポン２１が不正に再利用又は複写される。発行局Ｐの署名付きクーポンであるため、正当なクーポンを発行する発行局であると考え、信頼できる田中さんが偽発行局ＦＰから不正とは気付かずにクーポン２１を取得して携帯端末１−２に保持する。
【００２８】
この場合、携帯端末が信頼できる場合であっても、携帯端末の保持するクーポンがクーポン対象者本人のものとは限らないため（他人のクーポンを持っているかもしれないため）、クーポンが本来の目的で正当に利用されているかを検証することができない。従って、条件２を満たさない。
【００２９】
図４は、第２の関連技術を説明するための図である。図４に示す券検証システム９ｃでは、図２の第１の関連技術において、発行局Ｐの署名に加えて携帯端末Ａの署名付きのクーポン２２が発行局Ｐから発行される点が異なっている。
【００３０】
発行局Ｐが、ユーザ１ｕのユーザ情報（署名や生体情報等）と発行局の署名が付いたクーポン２２を発行し、サービス提供者（検証者）７ｓがそれを検証する。
【００３１】
この第２の関連技術では、携帯端末Ａの署名がクーポン２２に含まれることによって、条件２のユーザ１ｕ本人以外はクーポン２２を使用できないようにすることができる。しかし、条件１のクーポン２２を発行する発行局Ｐと検証者７ｓ（検証装置７）は、ユーザ１ｕ個人を特定する情報を得ることができないことを満たすことができない。
【００３２】
上述したように、条件１又は条件２のいずれか一方を満たすことはできたが、両方を同時に満たすことができない。
【００３３】
つまり、発行局５やサービス提供者７ｓ（検証装置７）は、ユーザ個人を特定する情報を用いずに、クーポン利用者がクーポン対象者本人であることを確認することが困難であった。具体的には、ユーザ１ｕは「あなたがこのクーポンの対象者ですね」ということを知られてもよいが、「あなたは鈴木さんですね」ということは知られたくない。また、ユーザ１ｕにとって、「このクーポンのユーザとあのクーポンのユーザは同一人物だ」ということは知られたくない。
【００３４】
本実施の形態では、上述した条件１及び条件２を同時に満たす仕組みを提供する。図５は、第１実施例における券検証システムの構成例を示す図である。図５に示す券検証システム２００では、クーポン２を発行する発行局Ｐと、ユーザ１ｕの携帯端末１とサービス提供者（検証者）７ｓによって使用される検証装置７と、携帯端末１が本物であるかを検証する携帯端末検証局８とを有する。
【００３５】
券検証システム２００では、発行局５は、クーポン２をユーザ１ｕの携帯端末１に紐付けて発行する。クーポン２は、携帯端末１とセットで利用される。
【００３６】
また、クーポン２にはクーポン認証子を付ける。クーポン認証子の特徴は以下の通りである。クーポン認証子の実現方法については、後述される。
【００３７】
特徴１：第三者がクーポン認証子を見ても、携帯端末１（＝ユーザ１ｕ）を特定できない。また、同じ携帯端末１に紐付いたクーポン間でもクーポン認証子は異なる。この特徴１によって、条件１が満たされる。
【００３８】
特徴２：クーポン２を利用する携帯端末１がクーポンに紐づいているか否かを確認できる。確かにその携帯端末１に発行されたクーポンであることを確認できる。この特徴２によって、条件２が満たされる。
【００３９】
検証者７ｓは、携帯端末１が信頼できる本物であるか否かを確認できる。信頼できると確認できた場合、検証者７ｓはクーポン認証子から携帯端末１がクーポン２に紐づいているか否かを確認できる。
【００４０】
検証者７ｓは、携帯端末検証局８に問い合わせて、携帯端末１が本物か否かを確認する。この確認方法については後述される。
【００４１】
本実施の形態におけるクーポン認証子は、クーポン用乱数値cpn_rdmとクーポン用端末生成値cpn_dvgenとの組である。クーポン認証子に係る値は以下の通りである。
・秘密値v：携帯端末１ごとの秘密値
・クーポン用乱数値cpn_rdm：乱数
・クーポン用端末生成値cpn_dvgen：携帯端末１が秘密値vとクーポン用乱数値cpn_rdmから生成する値
また、クーポン認証子を用いることで、上述した条件１と条件２とを満たす理由は、下記の通りである。
【００４２】
クーポン認証子の特徴１：クーポン発行時や検証時、携帯端末１は発行局５や検証者に端末固有の情報を渡さない。対象者が同一人物のユーザ１ｕであっても、クーポン認証子（クーポン用乱数値cpn_rdmと端末生成値cpn_dvgenとの組）はクーポンごとに異なるため、発行局５や検証者７ｓはクーポン認証子から携帯端末１を特定できない。
【００４３】
クーポン認証子の特徴２：クーポン用端末生成値cpn_dvgenは、携帯端末１ごとに異なる秘密値vを用いて生成される。従って、あるクーポン用乱数値cpn_rdmから特定のクーポン用端末生成値cpn_dvgenを生成できる携帯端末１は一つだけである。この特徴２から、検証者７ｓは、クーポン２を利用する携帯端末１がクーポンに紐付いているか否かを確認できる。
【００４４】
以下、第１実施例における、クーポン発行及びクーポン検証について以下に説明する。先ず、クーポン発行について説明する。クーポン２の発行は、発行局５がクーポン認証子（クーポン用乱数値cpn_rdmと端末生成値cpn_dvgenとの組）を含めた署名付きクーポンを発行することにより行われる。
【００４５】
図６は、第１実施例におけるクーポン発行の構成例を示す図である。図６中、クーポン発行に係る構成要素を示し、他を省略している。図６において、携帯端末１は、乱数値受信部１０１と、値生成・送信部１０２と、クーポン受信部１０３とを有する。乱数値受信部１０１と、値生成・送信部１０２と、クーポン受信部１０３とが、券取得部に相当する。秘密値vとクーポン２とが携帯端末１の記憶部に記憶される。
【００４６】
乱数値受信部１０１は、発行局５からクーポン用乱数値cpn_rdmを受信する。値生成・送信部１０２は、発行局５から受信したクーポン用乱数値cpn_rdmと秘密値vとからクーポン用端末生成値cpn_dvgenを生成して発行局５へ送信する。クーポン受信部１０３は、発行局５からクーポン２を受信すると、携帯端末１の記憶部にクーポン２を記憶する。
【００４７】
発行局５は、クーポン用の乱数値生成部５０１と、クーポン用の乱数値送信部５０２と、署名付クーポン発行部５０３とを有する。
【００４８】
乱数値生成部５０１は、クーポン毎に異なるクーポン用乱数値cpn_rdmを生成する。乱数値送信部５０２は、乱数値生成部５０１が生成したクーポン用乱数値cpn_rdmを携帯端末１に送信する。署名付クーポン発行部５０３は、携帯端末１から受信したクーポン認証子を含め、かつ発行局５の署名付きのクーポン２を発行する。
【００４９】
発行局５において、携帯端末１に対するクーポン発行要求に応じて、クーポン用の乱数値生成部５０１がクーポン用乱数値cpn_rdmを生成すると（ステップＳ１）、クーポン用の乱数値送信部５０２がクーポン用乱数値cpn_rdmを携帯端末１へ送信する（ステップＳ２）。
【００５０】
携帯端末１では、乱数値受信部１０１がクーポン２を受信すると、値生成・送信部１０２にクーポン２を渡す（ステップＳ３）。値生成・送信部１０２は、クーポン用乱数値cpn_rdmと秘密値vとから値cpn_dvgenを生成して、発行局５に送信する（ステップＳ４）。
【００５１】
発行局５において、署名付クーポン発行部５０３は、携帯端末１から生成値cpn_dvgenを受信して、生成値cpn_dvgenとクーポン用乱数値cpn_rdmとを含め、かつ、発行局５の署名の付いたクーポン２を携帯端末１に対して発行する（ステップＳ５）。携帯端末１では、発行局５から発行されたクーポン２を携帯端末１内の記憶部に保持する。
【００５２】
次に、本実施の形態におけるクーポン検証のための構成について説明する。図７は、第１実施例におけるクーポン検証の構成例を示す図である。図７中、クーポン検証に係る構成要素を示し、他を省略している。図７において、携帯端末１は、乱数受信部１０１と、値生成・送信部１０２とを有する。携帯端末１の記憶部には、秘密値１とクーポン２とが記憶される。
【００５３】
乱数受信部１０１は、端末用乱数値auth_rdmを受信、又は、クーポン用乱数値cpn_rdmを受信すると、受信した端末用乱数値auth_rdm又はクーポン用乱数値cpn_rdmを値生成・送信部１０２に通知する。値生成・送信部１０２は、乱数受信部１０１から通知された端末用乱数値auth_rdm又はクーポン用乱数値cpn_rdmと、秘密値vとから端末用又はクーポン用端末生成値を計算して、検証端末７に送信する。
【００５４】
検証装置７は、クーポン取得部７０１と、署名検証部７０２と、乱数値生成・送信部７０３と、端末本物確認部７０４と、クーポン認証子取出部７０５と、クーポン認証子検証部７０６とを有する。
【００５５】
携帯端末検証局８は、端末認証子（端末用乱数値auth_rdmと端末用端末生成値auth_dvgenとの組）を受け取り、携帯端末１が本物であるか否かを検証し、端末認証子検証部８０１を有する。また、携帯端末検証局８は、携帯端末検証局８内の記憶部に、本物であることを保証する全携帯端末の秘密値を保持する秘密値データベース（ＤＢ）８０９を有する。
【００５６】
本実施の形態における端末認証子は、端末用乱数値auth_rdmと端末用端末生成値auth_dvgenとの組である。端末認証子に係る値は以下の通りである。
・端末用乱数値auth_rdm：乱数
・端末用端末生成値auth_dvgen：秘密値vと端末用乱数値auth_rdmとから生成される値
検証装置７は、端末用乱数値auth_rdmを携帯端末１へ送信し、端末認証子（端末用乱数値auth_rdmと携帯端末１から返ってきた端末生成値auth_dvgenとの組）を携帯端末検証局８に送信して、携帯端末１が本物であることを確認する。確認後、検証装置７は、クーポン２内のクーポン認証子を検証して、クーポン２がその携帯端末１を対象にしていることを確認する。
【００５７】
クーポン取得部７０１は、携帯端末１からクーポン２を取得する。取得方法は、携帯端末１に表示されたクーポン２を示す画像（例えば、バーコード等）を読み取ってクーポン２の情報を取得する。又は、携帯端末１との近距離無線通信によって携帯端末１の記憶部からクーポン２を取得してもよい。
【００５８】
署名検証部７０２は、クーポン取得部７０１が取得したクーポン２の発行局５による署名を検証する。乱数値生成・送信部７０３は、端末用乱数値auth_rdmを生成する。
【００５９】
端末本物確認部７０４は、携帯端末検証局８に、乱数値生成・送信部７０３で生成した端末用乱数値auth_rdmと、この端末用乱数値auth_rdmを用いて携帯端末１に生成させた端末用端末生成値auth_dvgenとによって、携帯端末１を検証させる。
【００６０】
クーポン認証子取出部７０５は、携帯端末１から読み込んだクーポン２からクーポン認証子を取り出して、取り出したクーポン認証子に含まれるクーポン用乱数値cpn_rdmを用いて携帯端末１にクーポン用端末生成値cpn_dvgenを、検証装置７への返値として生成させる。
【００６１】
クーポン認証子検証部７０６は、携帯端末１に生成させた返値と、クーポン認証子取出部７０５が取り出したクーポン認証子に含まれるクーポン用端末生成値cpn_dvgenとの比較によってクーポン認証子を検証する。
【００６２】
検証装置７において、クーポン取得部７０１は、携帯端末１からクーポン２を取得すると、自装置の記憶部にクーポン２を格納して、署名検証部７０２にクーポン２の受信を通知する（ステップＳ２１）。署名検証部７０２は、クーポン取得部７０１から通知に応じて、クーポン２から発行局５の署名を取り出して、クーポン２の発行元の正当性を検証する（ステップＳ２２）。
【００６３】
検証装置７において、署名検証部７０２による発行局５の署名の検証が成功すると（ステップＳ２３）、乱数値生成・送信部７０３は、端末用乱数値auth_rdmを生成して、端末装置１へ送信すると共に、生成した端末用乱数値auth_rdmを端末本物確認部７０４へ提供する（ステップＳ２３）。
【００６４】
携帯端末１では、乱数受信部１０１が、端末用乱数値auth_rdmを受信すると、値生成・送信部１０２へと送る（ステップＳ２５）。値生成・送信部１０２は、端末用乱数値auth_rdmと秘密値vとから端末用端末生成値auth_dvgenを生成して、検証装置７へ送信する。
【００６５】
検証装置７では、端末本物確認部７０４が、端末生成値auth_dvgenを受信すると、端末用乱数値auth_rdmと端末生成値auth_dvgenとの組による端末認証子を携帯端末検証局８に送信する（ステップＳ２７）。
【００６６】
携帯端末検証局８では、端末認証子を受信すると、端末認証子検証部８０１が、受信した端末認証子から取得した端末用乱数値auth_rdmと、携帯端末検証局８が保持する秘密値ＤＢ８０９とから、携帯端末１と同様の方法で端末生成値auth_dvgenを計算する。端末認証子検証部８０１は、受信した端末認証子に含まれている端末生成値auth_dvgenに一致する端末生成値auth_dvgenを生成できれば、「携帯端末が本物である」ことを示す端末検証結果を検証装置７に送信する（ステップＳ２８）。
【００６７】
検証装置７では、携帯端末検証局８から受信した端末検証結果が「携帯端末が本物である」ことを示す場合、端末本物確認部７０４は、クーポン検証開始を署名検証部７０２に通知する（ステップＳ２９）。
【００６８】
端末検証結果の通知を受けた署名検証部７０２は、発行局５の署名の検証が成功し、かつ、端末検証結果が「携帯端末が本物である」ことを示す場合、クーポン認証子の取出要求をクーポン認証子取出部７０５に行う（ステップＳ３０）。
【００６９】
クーポン認証子取出部７０５は、クーポン認証子の取出要求に応じて、自装置の記憶部に記憶したクーポン２に含まれるクーポン認証子からクーポン用乱数値cpn_rdmを取得して、携帯端末１へ送信する（ステップＳ３１）。
【００７０】
携帯端末１では、クーポン用乱数値cpn_rdmを受信すると、乱数受信部１０１が、受信したクーポン用乱数値cpn_rdmを値生成・送信部１０２へ通知する（ステップＳ３２）。この通知に応じて、値生成・送信部１０２は、検証装置７から受信したクーポン用乱数値cpn_rdmと、自装置の記憶部に保持している携帯端末１の秘密値vとから、クーポン用端末生成値cpn_dvgenを生成する同じ計算方法によって検証装置７への返値を生成して、検証装置７へ生成した返値を送信する（ステップＳ３３）。
【００７１】
検証装置７では、携帯端末１から返値を受信すると、クーポン認証子検証部７０６は、返値が、クーポン取得部７０１が取得したクーポン２に含まれる端末生成値cpn_dvgenと一致するか否かを検証する（ステップＳ３４）。一致した場合に、クーポン認証子検証部７０６が、検証者７ｓへクーポン２が上述した条件１及び条件２を満たす適正な利用であることを通知することによって、ユーザ１ｕは、検証者７ｓからクーポン２に基づくサービスを受けることができる。
【００７２】
図６及び図７で説明したように、各クーポン毎に発行局５が生成したクーポン用乱数値cpn_rdmと、携帯端末１の秘密値vとによって、携帯端末１が生成したクーポン認証子に対してクーポン２が発行されるため、発行局５が携帯端末１及びユーザ１ｕを特定する情報を保持することがない。よって、発行局５において上述した条件１が成立する。
【００７３】
また、検証装置７では、検証装置７で端末用に生成した端末用乱数値auth_rdmに基づいて、携帯端末１が自身の秘密値vとによって生成した端末用端末生成値auth_dvgenによって、携帯端末検証局８に携帯端末１を検証させるため、検証装置７及び携帯端末検証局８が、携帯端末１及びユーザ１ｕを特定する情報を保持することがない。よって、検証装置７及び携帯端末検証局８において上述した条件１が成立する。
【００７４】
更に、携帯端末１が保持しているクーポン２のクーポン認証子に含まれるクーポン用乱数値cpn_rdmを用いて、携帯端末１に固有の秘密値vを用いてクーポン認証子を作成させることによって、ユーザ１ｕに発行したはずのクーポン２が別の人によって利用されようとしているのか否か、つまり、クーポン２がサービス提供者７ｓがサービス対象としたユーザ１ｕのものであるか否かを検証することができる。従って、上述した条件２が成立する。
【００７５】
図８は、クーポンのデータ構成例を示す図である。図８において、クーポン２は、主に、クーポン本体、発行局の署名、署名者の証明書等を含む。クーポン本体は、更に、サービス内容、クーポン認証子等を含む。サービス内容には、例えば、「コーヒー１００円引き」、・・・、「有効期限」等の１以上が指定されている。クーポン認証子には、クーポン用乱数値cpn_rdmと、クーポン用端末生成値cpn_dvgenとが記憶されている。
【００７６】
次に、第２実施例について説明する。第２実施例は、第１実施例に基づき略同様であるが、後述する他実施例との比較理解のために具体的に説明する。
【００７７】
第２実施例の概要は以下の通りである。
・携帯端末１は、端末毎の秘密値Viを自身の記憶部に保持する。
・携帯端末検証局８は、全端末の秘密値（V1、V2、・・・）ＤＢを有する。
・クーポン発行処理：
・発行局５がクーポン用乱数値を携帯端末１に提供し、携帯端末１がクーポン用乱数値と秘密値とからクーポン用端末生成値を生成する。
【００７８】
・発行局５がクーポン認証子（クーポン用乱数値とクーポン用端末生成値との組）を含めたクーポン２を発行する。
・クーポン検証処理：
・検証装置７が端末用乱数値を携帯端末１に提供し、携帯端末１が端末用乱数値と秘密値から端末用端末生成値を生成する。
【００７９】
・検証装置７から端末認証子を受け取った携帯端末検証局８は、携帯端末１と同様の計算により、検証装置７から受信した端末用乱数値と自らが保持する秘密値ＤＢから端末用端末生成値と一致する値を生成する。一致する値が生成できれば、「携帯端末が本物である」ことを示す端末検証結果を検証装置７に送信する。
【００８０】
・検証装置７は、携帯端末１が本物であることを確認後、クーポン認証子を使ってクーポンを利用するユーザ１ｕがクーポン対象者であることを検証する。
【００８１】
図９は、第２実施例におけるクーポン発行の構成例を示す図である。図９において、携帯端末１の構成は、第１実施例と同様である。発行局５は、乱数値生成・送信部５０１ａと、署名付クーポン発行部５０３とを有する。乱数値生成・送信部５０１ａは、実施例１における発行局５の乱数値生成部５０１と乱数値送信部５０２とに相当する。
【００８２】
発行局５において、乱数値生成・送信部５０１ａは、クーポン用乱数値cpn_rdmを生成して、携帯端末１に送信する（ステップＳ４１）。
【００８３】
携帯端末１では、発行局５からクーポン用乱数値cpn_rdmを受信すると、値生成・送信部１０２に通知する（ステップＳ４２）。値生成・送信部１０２は、記憶部から秘密値v1を取得して、クーポン用乱数値cpn_rdmと秘密値v1とでクーポン用端末生成値cpn_dvgenを作成して発行局５へ送信する（ステップＳ４３）。
【００８４】
発行局５では、クーポン用端末生成値cpn_dvgenを携帯端末１から受信すると、乱数値生成・送信部５０１ａからクーポン用乱数値cpn_rdmを取得して（ステップＳ４５）、クーポン用乱数値cpn_rdmとクーポン用端末生成値cpn_dvgenとによるクーポン認証子を含み、且つ、発行局５の署名付きクーポン２を発行して携帯端末１へ送信する（ステップＳ４６）。
【００８５】
図１０は、第２実施例におけるクーポン発行処理を説明するためのフローチャート図である。図１０において、発行局５では、乱数値生成部５０１がクーポン用乱数値cpn_rdmを生成して（ステップＳ５１）、乱数値送信部５０２が携帯端末１へクーポン用乱数値cpn_rdmを送信する（ステップＳ５２）。
【００８６】
発行局５では、携帯端末１からクーポン用端末生成値cpn_dvgenを受信すると（ステップＳ５３）、クーポン２を発行する（ステップＳ５４）。署名付クーポン発行部５０３によって、クーポン認証子（クーポン用乱数値cpn_rdmとクーポン用端末生成値cpn_dvgen）を含めたクーポン２が生成される。署名付クーポン発行部５０３は、クーポン２に自身の署名（デジタル署名）を付加して（ステップＳ５５）、携帯端末１にクーポン２を送信する（ステップＳ５６）。そして、発行局５によるクーポン発行処理が終了する。
【００８７】
上述した第２実施例におけるクーポン発行処理は、第１実施例においても同様に行われる。
【００８８】
クーポン２が発行される毎にクーポン用乱数値cpn_rdmを生成するため、１つ１つのクーポン２は、同一携帯端末１に２回以上発行される場合であっても、一致するクーポン認証子を持つことがない。同一のクーポン認証子を持つ２以上のクーポン２が、発行局５によって提供されることがないため、クーポン認証子によって携帯端末１の特定はできないことになる。
【００８９】
第２実施例におけるクーポン検証処理について、図１１及び図１２で説明する。図１１は、第２実施例におけるクーポン検証の構成例を示す図である。図１２は、第２実施例におけるクーポン検証の処理シーケンスを示す図である。図１１及び図１２中、同一処理は同一ステップ符号を付してある。
【００９０】
図１１及び図１２にて、検証装置７において、クーポン取得部７０１が携帯端末１からクーポン２を読み取ると（ステップＳ６１）、署名検証部７０２が発行局の署名を検証する（ステップＳ６２）。発行局の署名の検証後、乱数値生成・送信部７０３は、端末用乱数値auth_rdmを生成して、携帯端末１へ送信する（ステップＳ６３）。
【００９１】
携帯端末１において、乱数値受信部１０１が受信した端末用乱数値auth_rdmを値生成・送信部１０２に通知し、値生成・送信部１０２が端末用乱数値auth_rdmと携帯端末１内の記憶部に保持される秘密値v1とを使って、端末用端末生成値auth_dvgenを生成する（ステップＳ６４）。そして、値生成・送信部１０２は、生成した端末用端末生成値auth_dvgenを検証装置７へ送信する（ステップＳ６５）。
【００９２】
検証装置７では、携帯端末１から端末用端末生成値auth_dvgenを受信すると、端末本物確認部７０４が、乱数値生成・送信部７０３から端末用乱数値auth_rdmを取得して、携帯端末検証局８へ端末認証子（端末用乱数値auth_rdmと端末用端末生成値auth_dvgenとの組）を送信する（ステップＳ６６）。
【００９３】
携帯端末検証局８では、検証装置７から端末認証子を受信すると、端末認証子検証部８０１が端末認証子に含まれる端末用乱数値auth_rdmと、秘密値ＤＢ８０９とを使って、端末認証子に含まれる端末用端末生成値auth_dvgenと一致する値を作成できたか否かを検証する（ステップＳ６７）。端末認証子に含まれる端末用端末生成値auth_dvgenと一致する値を作成できた場合、端末認証子検証部８０１は、「携帯端末が本物である」ことを示す端末検証結果を検証装置７に送信する（ステップＳ６８）。
【００９４】
検証装置７では、「携帯端末が本物である」ことを示す端末検証結果を受信すると、端末本物確認部７０４がクーポン検証開始を署名検証部７０２に通知し、署名検証部７０２がクーポン２をクーポン認証子取出部７０５に通知する（ステップＳ６９）。クーポン認証子取出部７０５は、クーポン２からクーポン認証子を取り出して、クーポン認証子に含まれるクーポン用乱数値cpn_rdmを携帯端末１に送信する（ステップＳ７０）。
【００９５】
携帯端末１では、乱数値受信部１０１が受信したクーポン用乱数値cpn_rdmを値生成・送信部１０２に通知し（ステップＳ７１）、値生成・送信部１０２は、クーポン用乱数値cpn_rdmと、自分の秘密値v1とでクーポン用端末生成値cpn_dvgenを生成し、検証装置７への返値として検証装置７へ送信する（ステップＳ７２）。
【００９６】
検証装置７では、クーポン用端末生成値cpn_dvgenを示す返値として受信すると、クーポン認証子検証部７０６は、クーポン認証子取出部７０５からクーポン２のクーポン認証子を取得して、携帯端末１から受信した返値が、クーポン２内のクーポン認証子に含まれるクーポン用端末生成値cpn_dvgenと一致することを確認する（ステップＳ７３）。
【００９７】
一致を確認できた場合に、検証装置７又は検証者７ｓは、サービスを提供する（ステップＳ７４）。クーポン２で指定されるサービスが割引金額の場合、一致の確認に応じて、支払い金額から自動的に割引金額を差し引くようにしても良い。サービス提供者７ｓのレジへの入力の手間等を軽減することができる。
【００９８】
次に、第３実施例について説明する。上述した第２実施例には以下の課題がある。
・携帯端末検証局８に各携帯端末１の秘密値（V1、V2、・・・）を知られてしまう。
・携帯端末検証局８は、端末用端末生成値auth_dvgenを生成する計算を、秘密値ＤＢ８０９から該当秘密値を検出できるまで繰り返す必要がある。
【００９９】
第３実施例では、クーポン検証の構成において、これら課題を解決する仕組みを備える。クーポン発行の構成は、第２実施例と同様である。
【０１００】
携帯端末１と携帯端末検証局８の各々が保持する値は、以下の通りである。
・携帯端末１は、秘密値Xと、共通値eとを自身の記憶部に保持する。
【０１０１】
・秘密値Xは、携帯端末１毎に異なる値である。ユーザ１ｕが設定しても良い。
【０１０２】
・共通値eは、携帯端末検証局８が本物であることを保証する、全携帯端末１と携帯端末検証局８とで保持される共通の値である。
・携帯端末検証局８は、共通値eを自身の記憶部に保持する。
【０１０３】
他実施例と異なる処理は、以下の通りである。
・携帯端末１による端末認証子を生成する処理：
・秘密値Xと端末用乱数値auth_rdmから、公開鍵pと秘密鍵sのペアを生成する。
【０１０４】
・端末用端末生成値auth_dvgen（=Ge(Hs(auth_rdm)+p）を生成する。ここで、Ｇは共通鍵暗号関数であり、Ｈは公開鍵暗号関数である。
【０１０５】
・クーポン認証子も同様の計算で生成する。
・携帯端末検証局８の携帯端末１を検証する処理：
・共通値eを使ってGe(Hs(auth_rdm)+p)からHs(auth_rdm)と公開鍵pとを取り出す。
【０１０６】
・公開鍵pを使ってHs(auth_rdm)からauth_rdmを生成する。
【０１０７】
第３実施例におけるクーポン検証の構成例について説明する。図１３は、第３実施例におけるクーポン検証の構成例を示す図である。図１４は、第３実施例における携帯端末１による端末認証子生成処理を説明するためのフローチャート図である。図１５は、第３実施例における携帯端末検証局８による携帯端末検証処理を説明するためのフローチャート図である。
【０１０８】
図１３中、図１４又は図１５に示す処理と同一の処理には同一ステップ符号を付してある。ステップＳ９１からＳ９４は、図１４のステップ番号に相当する。ステップＳ１１１からＳ１１６は、図１５のステップ番号に相当する。
【０１０９】
図１３にて、検証装置７において、クーポン取得部７０１が携帯端末１からクーポン２を読み取ると（ステップＳ８１）、署名検証部７０２が発行局の署名を検証する（ステップＳ８２）。発行局の署名の検証後、乱数値生成・送信部７０３は、端末用乱数値auth_rdmを生成して、携帯端末１へ送信する（ステップＳ８３）。
【０１１０】
携帯端末１において、乱数値受信部１０１が端末用乱数値auth_rdmを受信すると、値生成・送信部１０２に通知する（ステップＳ９１）。
【０１１１】
値生成・送信部１０２が端末用乱数値auth_rdmと、携帯端末１内の記憶部に保持される共通値ｅとを用いて、公開鍵pと秘密鍵sとを生成する（ステップＳ９２）。値生成・送信部１０２は、端末用端末生成値auth_dvgenにGe(Hs(auth_rdm)+p)の値を設定し（ステップＳ９３）、検証装置７へ送信する（ステップＳ９４）。
【０１１２】
検証装置７では、端末用端末生成値auth_dvgenを受信すると、端末本物確認部７０４が、乱数値生成・送信部７０３から端末用乱数値auth_rdmを取得して（ステップＳ１０１）、携帯端末検証局８へ端末認証子（端末用乱数値auth_rdmと端末用端末生成値auth_dvgenとの組）を送信する（ステップＳ１０２）。
【０１１３】
携帯端末検証局８では、検証装置７から端末認証子（端末用乱数値auth_rdmと端末用端末生成値auth_dvgenとの組）を受信すると（ステップＳ１１１）、端末認証子検証部８０１は、自身の記憶部内の共通値ＤＢ８１９に格納されている共通値eを使って、端末用端末生成値auth_dvgenから、Hs(auth_rdm)+pを取り出す（ステップＳ１１２）。Hs(auth_rdm)と公開鍵pとを取得する。
【０１１４】
また、端末認証子検証部８０１は、公開鍵pを使ってHs(auth_rdm)から端末用乱数値auth_rdmを生成する（ステップＳ１１３）。そして、端末認証子検証部８０１は、取り出した端末用乱数値auth_rdmと、検証装置７から受信した端末認証子内の端末用乱数値auth_rdmとが一致したか否かを判断する（ステップＳ１１４）。
【０１１５】
一致した場合、端末認証子検証部８０１は、「携帯端末は本物である」ことを示す端末検証結果を検証装置へ送信する（ステップＳ１１５）。一方、一致しなかった場合、端末認証子検証部８０１は、「携帯端末は偽者である」ことを示す端末検証結果を検証装置７へ送信する（ステップＳ１１６）。
【０１１６】
検証装置７において、「携帯端末が本物である」ことを示す端末検証結果を受信すると、端末本物確認部７０４がクーポン検証開始を署名検証部７０２に通知し（ステップＳ１２１）、署名検証部７０２がクーポン２をクーポン認証子取出部７０５に通知する（ステップＳ１２２）。一方、「携帯端末は偽者である」ことを示す端末検証結果を受信した場合、その旨を検証者７ｓに通知し、サービスの提供は行わない。
【０１１７】
クーポン検証開始の通知に応じて、クーポン認証子取出部７０５は、クーポン２からクーポン認証子を取り出して、クーポン認証子に含まれるクーポン用乱数値cpn_rdmを携帯端末１に送信する（ステップＳ１２３）。
【０１１８】
携帯端末１では、乱数値受信部１０１が受信したクーポン用乱数値cpn_rdmを値生成・送信部１０２に通知し（ステップＳ１２４）、値生成・送信部１０２は、自身の記憶部から秘密値X1を取得して（ステップＳ１２５）、クーポン用乱数値cpn_rdmと、自分の秘密値X1とでクーポン用端末生成値cpn_dvgenを生成し、検証装置７への返値として検証装置７へ送信する（ステップＳ１２６）。
【０１１９】
検証装置７では、クーポン用端末生成値cpn_dvgenを示す返値として受信すると、クーポン認証子検証部７０６は、クーポン認証子取出部７０５からクーポン２のクーポン認証子を取得して、携帯端末１から受信した返値が、クーポン２内のクーポン認証子に含まれるクーポン用端末生成値cpn_dvgenと一致することを確認する（ステップＳ１２７）。一致を確認できた場合に、検証装置７又は検証者７ｓは、サービスを提供する。
【０１２０】
次に、第４実施例について説明する。第４実施例は、第３実施例と同様に第２実施例の課題を解決する。第２実施例及び第３実施例の場合、検証装置７でクーポン検証を行なっているため、携帯端末１は乱数値の受信に応じて端末生成値を生成して送り返す処理だけを行っている。一方、第４実施例では、クーポン検証を携帯端末１で行う。
【０１２１】
携帯端末１と携帯端末検証局８の各々が保持する値は、以下の通りである。
・携帯端末１は、秘密値Xと、共通値eとを自身の記憶部に保持する。
【０１２２】
・秘密値Xは、携帯端末１毎に異なる値である。ユーザ１ｕが設定しても良い。
【０１２３】
・共通値eは、携帯端末検証局８が本物であることを保証する、全携帯端末１と携帯端
末検証局８とで保持される共通の値である。
・携帯端末検証局８は、共通値eを自身の記憶部に保持する。
【０１２４】
処理の概要は、以下の通りである。
【０１２５】
携帯端末１における処理は、主に、
・クーポン認証子を生成する
・クーポン用乱数値cpn_rdmと秘密値Xとからクーポン用端末生成値cpn_dvgenを生成する
・端末認証子を生成する
端末用乱数値auth_rdmと共通値eとから端末用端末生成値を生成する
・クーポンを検証する
検証装置７から送信されたクーポン認証子と自身の秘密値Xとを使って、クーポン認証子に含まれるクーポン用端末生成値を生成した端末が、携帯端末１自身であることを確認し、結果を検証装置７へ送信する
ことである。
【０１２６】
携帯端末検証局における処理は、主に、
・端末認証子を検証する
検証装置７から送信される端末認証子と共通値eとを使って、端末認証子を生成した携帯端末１が信頼できることを検証する
ことである。
【０１２７】
図１６は、第４実施例におけるクーポン検証の構成例を示す図である。図１６において、携帯端末１は、乱数値受信部１０１及び端末用の値生成・送信部１０２に加えて、クーポン認証子受信部１０４と、クーポン用の値生成部１０５と、クーポン検証部１０６とを更に有する。第４実施例では、乱数値受信部１０１及び端末用の値生成・送信部１０２が、端末検証に係る処理を行い、クーポン認証子受信部１０４と、クーポン用の値生成部１０５と、クーポン検証部１０６とが、クーポン検証に係る処理を行う。乱数値受信部１０１及び端末用の値生成・送信部１０２は、前述した他実施例と同様であるので、その説明を省略する。
【０１２８】
クーポン認証子受信部１０４は、検証装置７からクーポン認証子を受信する。値生成部１０５は、クーポンを検証するためのクーポン用端末生成値を、検証装置７から受信したクーポン用乱数値と、自身の記憶部に格納されている携帯端末１の秘密値X1とを用いた計算により求める。クーポン検証部１０６は、値生成部１０５が生成したクーポン用端末生成値と、クーポン認証子受信部１０４から得られたクーポン認証子から得られるクーポン用端末生成値との一致を確認することによって、自身が保持するクーポン２の適正利用を検証する。
【０１２９】
第４実施例では、携帯端末１が保持するクーポン２の正当性は検証装置７で行なうが、携帯端末１が保持するクーポン２の適正利用の判断は携帯端末１自身が行う。
【０１３０】
図１６にて、検証装置７において、クーポン取得部７０１が携帯端末１からクーポン２を読み取ると（ステップＳ２０１）、署名検証部７０２が発行局の署名を検証する（ステップＳ２０２）。発行局の署名の検証後、乱数値生成・送信部７０３は、端末用乱数値auth_rdmを生成して、携帯端末１へ送信する（ステップＳ２０３）。
【０１３１】
携帯端末１において、乱数値受信部１０１が受信した端末用乱数値auth_rdmを値生成・送信部１０２に通知し（ステップＳ２０４）、値生成・送信部１０２が端末用乱数値auth_rdmと携帯端末１内の記憶部に保持される共通値eとを使って、端末用端末生成値auth_dvgenを生成する（ステップＳ２０５）。そして、値生成・送信部１０２は、生成した端末用端末生成値auth_dvgenを検証装置７へ送信する（ステップＳ２０６）。
【０１３２】
検証装置７では、携帯端末１から端末用端末生成値auth_dvgenを受信すると、端末本物確認部７０４が、乱数値生成・送信部７０３から端末用乱数値auth_rdmを取得して（ステップＳ２０７）、携帯端末検証局８へ端末認証子（端末用乱数値auth_rdmと端末用端末生成値auth_dvgenとの組）を送信する（ステップＳ２０８）。
【０１３３】
携帯端末検証局８では、検証装置７から端末認証子を受信すると、端末認証子検証部８０１が端末認証子に含まれる端末用乱数値auth_rdmと、共通値ＤＢ８１９とを使って、端末認証子に含まれる端末用端末生成値auth_dvgenと一致する値を作成できたか否かを検証する（ステップＳ２０９）。端末認証子に含まれる端末用端末生成値auth_dvgenと一致する値を作成できた場合、端末認証子検証部８０１は、「携帯端末が本物である」ことを示す端末検証結果を検証装置７に送信する（ステップＳ２１０）。
【０１３４】
検証装置７では、「携帯端末が本物である」ことを示す端末検証結果を受信すると、端末本物確認部７０４がクーポン検証開始を署名検証部７０２に通知し（ステップＳ２１１）、署名検証部７０２がクーポン２をクーポン認証子取出部７０５に通知する（ステップＳ２１２）。クーポン認証子取出部７０５は、クーポン２からクーポン認証子を取り出して携帯端末１に送信する（ステップＳ２１３）。
【０１３５】
携帯端末１では、クーポン認証子を受信すると、クーポン認証子受信部１０４は、受信したクーポン認証子（クーポン用乱数値cpn_rdmと端末生成値cpn_dvgenとの組）に含まれるクーポン用乱数値cpn_rdmを値生成部１０５に通知する（ステップＳ２１４）。
【０１３６】
値生成部１０５は、通知されたクーポン用乱数値cpn_rdmと、自身の記憶部に記憶している秘密値X1とを用いて、クーポン用端末生成値cpn_dvgenを生成して（ステップＳ２１５）、クーポン検証部１０６に通知する（ステップＳ２１６）。
【０１３７】
クーポン検証部１０６は、クーポン認証子受信部１０４からクーポン認証子を取得して（ステップＳ２１７）、値生成部１０５によって生成されたクーポン用端末生成値cpn_dvgenが、クーポン認証子に含まれるクーポン用端末生成値cpn_dvgenと一致することを確認して、クーポン検証結果を検証端末７へ送信する（ステップＳ２１８）。一致を確認できた場合には、「本端末はクーポン対象者である」ことを示すクーポン検証結果が検証端末７に送信される。
【０１３８】
検証端末７では、携帯端末１からクーポン検証結果を受信すると、クーポン検証結果受信部７０８によって、サービス提供者７ｓに通知する。クーポン検証結果が「本端末はクーポン対象者である」ことを示す場合、サービス提供者７ｓは、ユーザ１ｕに対してクーポン２で指定されるサービスを行なう。一方、クーポン検証結果が「本端末はクーポン対象者ではない」ことを示す場合、サービス提供者７ｓは、ユーザ１ｕに対してクーポン２で指定されるサービスを行なわない。
【０１３９】
次に、乱数値の生成について説明する。
・方法１
発行局５がクーポン用乱数値を生成し、検証装置７が端末用乱数値を生成する。第１から第４実施例における乱数値生成方法に相当する。
【０１４０】
方法１の課題
・発行局５が毎回同じ値をクーポン用乱数値として用いた場合、対象者が同一人物であるクーポンのクーポン認証子が全て同じ値となり、同じ対象者のクーポン同士を紐付けることが可能となってしまう。
【０１４１】
・検証装置７が毎回同じ値を端末用乱数値として用いた場合も同様に、同じ端末に対する端末認証子が全て同じ値となるために、ユーザが今回利用するクーポンと過去に利用したクーポンとを紐付けることが可能となってしまう。
・方法２：上記方法１の課題を解決する方法
・携帯端末１の生成値α'と発行局５の生成値α''とを組み合せて、クーポン用乱数値を作成する。同様に、携帯端末１の生成値α'と検証装置７の生成値α''とを組み合せて、端末用乱数値を作成する。
【０１４２】
・但し、携帯端末１の生成値α'は生成毎に異なる値（例えば、携帯端末１内で生成された乱数値）であれば、発行局５又は検証装置７の生成値α''はなくても良い。
【０１４３】
図１７は、乱数値の生成する方法２を説明するための図である。図１７（Ａ）では、クーポン用乱数値を生成するための処理フローを示し、図１７（Ｂ）では、端末用乱数値を生成するための処理フローを示している。
【０１４４】
図１７（Ａ）において、携帯端末１が、値α'を生成して（ステップＳ３０１）、発行局５に送信する（ステップＳ３０２）。発行局５は、値α''を生成して（ステップＳ３０３）、受信した携帯端末１の生成値α'に自身で生成した生成値α''を加算した値をクーポン用乱数値として携帯端末１へ送信する（ステップＳ３０４）。携帯端末１は、クーポン用乱数値等を用いてクーポン用端末生成値を生成して、発行局５に送信する（ステップＳ３０５）。
【０１４５】
図１７（Ｂ）において、携帯端末１が、値α'を生成して（ステップＳ３１１）、検証装置７に送信する（ステップＳ３１２）。検証装置７は、値α''を生成して（ステップＳ３１３）、受信した携帯端末１の生成値α'に自身で生成した生成値α''を加算した値を端末用乱数値として携帯端末１へ送信する（ステップＳ３１４）。携帯端末１は、端末用乱数値等を用いて端末用端末生成値を生成して、検証装置７に送信する（ステップＳ３１５）。
【０１４６】
図１７（Ａ）及び図１７（Ｂ）において、値α''の生成を省略しても良い。
【０１４７】
上述した携帯端末１、発行局５、検証装置７、携帯端末検証局８の各々は、コンピュータ装置であり、図１８に示すようなハードウェア構成を有する。図１８は、コンピュータ装置のハードウェア構成を示す図である。
【０１４８】
図１８において、コンピュータ装置は、ＣＰＵ（Central Processing Unit）１１と、主記憶装置１２と、補助記憶装置１３と、入力装置１４と、表示装置１５と、通信Ｉ／Ｆ（インターフェース）１７と、ドライブ１８とを有し、バスＢに接続される。
【０１４９】
ＣＰＵ１１は、主記憶装置１２に格納されたプログラムに従ってコンピュータ装置を制御する。主記憶装置１２には、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read-Only Memory）等が用いられ、ＣＰＵ１１にて実行されるプログラム、ＣＰＵ１１での処理に必要なデータ、ＣＰＵ１１での処理にて得られたデータ等を格納する。また、主記憶装置１２の一部の領域が、ＣＰＵ１１での処理に利用されるワークエリアとして割り付けられている。
【０１５０】
補助記憶装置１３には、ハードディスクドライブが用いられ、各種処理を実行するためのプログラム等のデータを格納する。補助記憶装置１３に格納されているプログラムの一部が主記憶装置１２にロードされ、ＣＰＵ１１に実行されることによって、各種処理が実現される。記憶部１３０は、主記憶装置１２及び／又は補助記憶装置１３を有する。
【０１５１】
入力装置１４は、マウス、キーボード等を有し、ユーザがコンピュータ装置による処理に必要な各種情報を入力するために用いられる。表示装置１５は、ＣＰＵ１１の制御のもとに必要な各種情報を表示する。
【０１５２】
通信Ｉ／Ｆ１７は、外部装置との間の通信制御をするための装置である。通信Ｉ／Ｆ１７による通信は無線又は有線に限定されるものではない。通信Ｉ／Ｆ１７は、用途に応じて必要となる通信方式を複数備えても良い。通信Ｉ／Ｆ１７は、例えばインターネット通信、ブルートゥース（登録商標）による近距離無線通信、ＩｒＤＡ（Infrared Data Association）等による赤外線通信等を有するようにしても良い。
【０１５３】
発行局５、検証装置７、又は携帯端末検証局８として機能するコンピュータ装置によって行われる処理を実現するプログラムは、例えば、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）等の記憶媒体１９によってコンピュータ装置に提供される。即ち、プログラムが保存された記憶媒体１９がドライブ１８にセットされると、ドライブ１８が記憶媒体１９からプログラムを読み出し、その読み出されたプログラムがバスＢを介して補助記憶装置１３にインストールされる。そして、プログラムが起動されると、補助記憶装置１３にインストールされたプログラムに従ってＣＰＵ１１がその処理を開始する。尚、プログラムを格納する媒体としてＣＤ−ＲＯＭに限定するものではなく、コンピュータが読み取り可能な媒体であればよい。コンピュータ読取可能な記憶媒体として、ＣＤ−ＲＯＭの他に、ＤＶＤディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い
携帯電話１に組み込まれるコンピュータ装置では、上述した本実施の形態に係るプログラム、データ等はＲＯＭ等に予め記録されていても良い。
【０１５４】
上述したように、本実施の形態では、発行局５と検証装置７は携帯端末１を特定できず、かつ、発行局５から券を発行された携帯端末１以外はその券を利用することができない券検証システムを提供することができる。
【０１５５】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【０１５６】
以上の第１から第４実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
券を発行する発行局と、該発行局から取得した券を利用する端末と、該端末から取得した券を検証した結果に応じて該券の利用許可を該端末に対して与える検証装置とを含む券検証システムにおいて、
前記端末は、
前記発行局から送信された乱数値と前記端末の固有値とに基づいて該端末において行われた演算の結果を特定する第１情報と、該乱数値とを含む券を該発行局から取得する券取得部と、
前記端末から前記検証装置への前記券の送信に対する応答として前記券に含まれる乱数値を該検証装置から受信する乱数値受信部と、
前記検証装置から受信した前記乱数値と前記端末の固有値とに基づいて、該端末において行われた演算の結果を特定する第２情報を前記検証装置に送信する送信部とを有し、
前記第２情報と前記第１情報との一致が検証できた場合に、前記券の利用が可能となるようにしたことを特徴とする券検証システム。
（付記２）
前記検証は、前記検証装置によって行われることを特徴とする付記１記載の券検証システム。
（付記３）
前記端末は、
前記検証を行なった検証結果を前記検証装置に送信する券検証部を有することを特徴とする付記１記載の券検証システム。
（付記４）
前記乱数値受信部は、前記検証装置から該検証装置で生成された第２乱数値を受信し、
前記送信部は、前記第２乱数値と、前記端末の所定値とを用いた演算の結果を特定する第３情報を生成して前記検証装置に送信することによって、
前記携帯端末が検証されるようにしたことを特徴とする付記２記載の券検証システム。
（付記５）
前記検証装置は、
前記端末から前記券を取得すると、端末用乱数値を生成して該端末へ送信する乱数値生成・送信部と、
前記端末用乱数値の前記端末への送信に応じて、該端末用乱数値と該端末の所定値とに基づいて該端末によって生成された端末用端末生成値を該端末から受信すると、該端末用乱数値と、前記生成した端末用端末生成値との組による端末認証子を該端末を検証する端末検証局へ送信して、該端末検証局から端末検証結果を受信する端末本物確認部とを有し、
前記端末検証結果が前記端末が本物であることを検証できた場合、前記券を検証することを特徴とする付記４記載の券検証システム。
（付記６）
前記所定値は、前記端末の固有値であり、
前記端末検証局によって、該端末検証局が有する複数の固有値の中で前記端末認証子から演算により取得した固有値と一致する固有値があった場合、前記端末（１）が本物であることを示す前記端末検証結果が前記検証装置に送信されることを特徴とする付記５記載の券検証システム。
（付記７）
前記所定値は、複数の端末に共通の共通値であり、
前記端末検証局によって、前記端末認証子から演算により取得した共通値と、該端末検証局が有する共通値との一致が検証できた場合、前記端末が本物であることを示す前記端末検証結果が前記検証装置に送信されることを特徴とする付記５記載の券検証システム。
（付記８）
券を発行する発行局と、該発行局から取得した券を利用する端末と、該端末から取得した券を検証した結果に応じて該券の利用許可を該端末に対して与える検証装置とを含む券検証システムにおける券検証方法において、
前記端末は、
前記発行局から送信された乱数値と前記端末の固有値とに基づいて該端末において行われた演算の結果を特定する第１情報と、該乱数値とを含む券を該発行局から取得し、
前記端末から前記検証装置への前記券の送信に対する応答として前記券に含まれる乱数値を該検証装置から受信し、
前記検証装置から受信した前記乱数値と前記端末の固有値とに基づいて、該端末において行われた演算の結果を特定する第２情報を前記検証装置に送信し、
前記第２情報と前記第１情報との一致が検証できた場合に、前記券の利用が可能となるようにしたことを特徴とする券検証方法。
（付記９）
券の発行に係る乱数値を端末に送信する乱数値生成・送信部と、
前記端末によって前記乱数値と前記端末の固有値とに基づいて生成された第１情報を該端末から受信すると、前記乱数値生成・送信部によって該端末に送信した乱数値と該受信した第１情報との組による券認証子に自局の署名を付加した券を発行して、該端末に送信する署名付券発行部と
を有することを特徴とする発行局。
（付記１０）
発行局から送信された第１乱数値と、端末の固有値とを記憶する記憶部と、
前記記憶部に記憶された前記第１乱数値と前記端末の固有値とに基づいて生成した第１情報を、前記発行局へ送信する送信部と、
前記発行局から前記第１乱数値と前記第１情報との組による券認証子を含む券を受信して前記記憶部に記憶する券受信部と、
前記記憶部に記憶された前記券を、該券を検証する検証装置に送信して、該券に含まれる第１乱数値を受信する乱数値受信部と、
前記受信した第１乱数値と、前記端末の固有値とを用いた演算の結果を特定する第２情報を生成して、前記検証装置に送信する送信部とを有し、
前記検証装置によって前記第２情報と前記第１情報との一致が検証されることを特徴とする携帯端末。
（付記１１）
前記乱数値受信部は、前記検証装置から該検証装置で生成された第２乱数値を受信し、
前記送信部は、前記第２乱数値と、前記端末の所定値とを用いた演算の結果を特定する第３情報を生成して前記検証装置に送信することによって、
前記携帯端末が検証されるようにしたことを特徴とする付記１０記載の携帯端末。
（付記１２）
前記所定値は、前記端末の固有値又は複数の端末に共通の共通値であることを特徴とする付記１１記載の携帯端末。
（付記１３）
券用乱数値と、該券用乱数値と端末の固有値とに基づいて該端末において行われた演算の結果を特定する第１情報との組による券認証子で特定される券と、端末の固有値とを記憶する記憶部と、
検証装置が前記記憶部から読み込んだ前記券から取り出した前記券認証子を受信する券認証子受信部と、
前記券認証子受信部によって受信した前記券認証子の前記券用乱数値と前記端末の固有値とに基づいて行った演算の結果を特定する第２情報を生成する値生成部と、
前記券認証子受信部が受信した前記券認証子の前記第１情報と、前記値生成部によって生成された前記第２情報との一致を検証して、前記検証端末へ検証結果を送信する検証部と
を有することを特徴とする携帯端末。
（付記１４）
券用乱数値と、該券用乱数値と端末の固有値とに基づいて該端末において行われた演算の結果を特定する第１情報との組による券認証子で特定される券を保持した端末から、該券を取得し該券に与えられた券認証子を取り出して、該券認証子に含まれる券用乱数値を取得して該端末へ送信する券認証子取出部を有し、
前記送信した券用乱数値と該端末の固有値とを用いた前記端末によって行われた演算の結果を特定する第２情報と、前記券の券認証子に含まれる前記第１情報とが一致するか否かによって、券が検証されることを特徴とする検証装置。
（付記１５）
前記端末から前記第２情報を受信すると、該第２情報と、前記券の券認証子に含まれる前記第１情報とが一致するか否かによって、該券を検証する券検証部と
を有することを特徴とする付記１４記載の検証装置。
（付記１６）
前記端末から前記第２情報と前記第１情報と一致又は不一致を示す券検証結果を受信することを特徴とする付記１５記載の検証装置。
（付記１７）
前記端末から前記券を取得すると、端末用乱数値を生成して該端末へ送信する乱数値生成・送信部と、
前記端末用乱数値の前記端末への送信に応じて、該端末用乱数値と該端末の所定値とに基づいて該端末によって生成された端末用端末生成値を該端末から受信すると、該端末用乱数値と、前記生成した端末用乱数値との組による端末認証子を該端末を検証する端末検証局へ送信して、該端末検証局から端末検証結果を受信する端末本物確認部とを有し、
前記端末検証結果が前記端末が本物であることを検証できた場合、前記券を検証することを特徴とする付記１６記載の検証装置。
（付記１８）
前記所定値は、前記端末の固有値であり、
前記端末検証局によって、該端末検証局が有する複数の固有値の中で前記端末認証子から演算により取得した固有値と一致する固有値があった場合、前記端末が本物であるか否かが前記端末検証結果に示されることを特徴とする付記１７記載の検証装置。
（付記１９）
前記所定値は、複数の端末に共通の共通値であり、
前記端末検証局によって、前記端末認証子から演算により取得した共通値と、該端末検証局が有する共通値との一致が検証できた場合、前記端末が本物であるか否かが前記端末検証結果に示されることを特徴とする付記１８記載の検証装置。
（付記２０）
端末の正当性を検証する端末検証局であって、
外部装置から、端末用乱数値と、前記端末によって該端末用乱数値と該端末が保持する所定値とに基づいて生成された端末用端末生成値との組による端末認証子を受信すると、前記端末検証局の所定値との一致を検証する端末認証子検証部
を有することを特徴とする端末検証局。
（付記２１）
前記所定値は、前記端末の固有値であり、
前記端末認証子検証部は、前記端末検証局が有する複数の固有値の中で前記端末認証子から演算により取得した固有値と一致する固有値があった場合、前記端末が本物であることを示す前記端末検証結果を前記外部装置に送信することを特徴とする付記２０記載の端末検証局。
（付記２２）
前記所定値は、複数の端末に共通の共通値であり、
前記端末認証子検証部は、前記端末認証子から演算により取得した共通値と、前記端末検証局が有する共通値との一致が検証できた場合、前記端末が本物であることを示す前記端末検証結果を前記外部装置に送信することを特徴とする付記２０記載の端末検証局。
【符号の説明】
【０１５７】
１ｕ          ユーザ
２            クーポン
３            サービス
５            発行局
７            検証装置
７ｓ          検証者
８            携帯端末検証局
１１          ＣＰＵ
１２          主記憶装置
１３          補助記憶装置
１４          入力装置
１５          表示装置
１７          通信Ｉ／Ｆ
１８          ドライブ
１９          記憶媒体
２１、２２    クーポン
１０１        乱数値受信部
１０２        値生成・送信部
１０３        クーポン受信部
１０４        クーポン認証子受信部
１０５        値生成部
１０６        クーポン検証部
５０１        乱数値生成部
５０１ａ      乱数値生成・送信部
５０２        乱数値送信部
５０３        署名付クーポン発行部
７０１        クーポン取得部
７０２        署名検証部
７０３        乱数値生成・送信部
７０４        端末本物確認部
７０５        クーポン認証子取出部
７０６        クーポン認証子検証部
８０１        端末認証子検証部
【図１】
2014175728.tif 000003
【図２】
2014175728.tif 000004
【図３】
2014175728.tif 000005
【図４】
2014175728.tif 000006
【図５】
2014175728.tif 000007
【図６】
2014175728.tif 000008
【図７】
2014175728.tif 000009
【図８】
2014175728.tif 000010
【図９】
2014175728.tif 000011
【図１０】
2014175728.tif 000012
【図１１】
2014175728.tif 000013
【図１２】
2014175728.tif 000014
【図１３】
2014175728.tif 000015
【図１４】
2014175728.tif 000016
【図１５】
2014175728.tif 000017
【図１６】
2014175728.tif 000018
【図１７】
2014175728.tif 000019
【図１８】
2014175728.tif 000020