(57)【特許請求の範囲】
【請求項１】
第１の文字列と固有に与えられた機体識別番号とから所定の計算方法によって第１の不可逆な値を算出する算出部と、
第１の暗証番号及び前記第１の不可逆な値を含む認証要求を送信する送信部と、
を含むクライアント端末と、
前記クライアント端末の第２の暗証番号と、前記機体識別番号と前記第１の文字列とから算出された第２の不可逆な値とを記憶する記憶部と、
前記認証要求を前記クライアント端末から受信した際に、前記認証要求に含まれる前記第１の暗証番号と前記第１の不可逆な値とが、それぞれ、前記記憶部に記憶される前記クライアント端末の前記第２の暗証番号と前記第２の不可逆な値とに合致する場合に前記クライアント端末を認証する認証部と、
を含むサーバと、
を備える認証システム。
【請求項２】
前記クライアント端末の前記送信部は、前記第１の暗証番号と、前記第１の文字列と、前記第１の不可逆な値とを含む登録要求を前記サーバに送信し、
前記サーバの前記記憶部は、前記クライアント端末の第２の暗証番号と、第２の文字列とを記憶し、
前記サーバは、前記登録要求を前記クライアント端末から受信した際に、前記登録要求に含まれる第１の暗証番号と前記第１の文字列とが、前記記憶部に記憶される前記クライアント端末の前記第２の暗証番号と前記第２の文字列とに合致した場合に、前記第１の不可逆な値を前記第２の不可逆な値として前記記憶部に登録し、前記第２の文字列を前記記憶部から削除する登録部をさらに備える、
請求項１に記載の認証システム。
【請求項３】
前記クライアント端末の前記算出部は、前記登録要求に含まれる第１の暗証番号と前記第１の文字列とが、前記サーバの前記記憶部に記憶される前記クライアント端末の前記第２の暗証番号と前記第２の文字列とに合致した場合に、前記第１の不可逆な値を前記クライアント端末に備えられる記憶部に格納する
請求項２に記載の認証システム。
【請求項４】
第１の文字列と自装置に固有に与えられた機体識別番号とから所定の計算方法によって第１の不可逆な値を算出する算出部と、
第１の暗証番号及び前記第１の不可逆な値を含む認証要求を、第２の暗証番号と、前記機体識別番号と前記第１の文字列とから算出された第２の不可逆な値とを記憶するサーバに送信する送信部と、
前記認証要求に含まれる前記第１の暗証番号と前記第１の不可逆な値とが、それぞれ、前記サーバに記憶される前記第２の暗証番号と前記第２の不可逆な値とに合致する場合に前記サーバによって送信される前記認証要求に対する認証成功の通知を受信する受信部と、
を備えるクライアント端末。
【請求項５】
前記送信部は、前記第１の暗証番号と、前記第１の文字列と、前記第１の不可逆な値とを含む登録要求を、前記第２の暗証番号と第２の文字列とを記憶する前記サーバに送信し、
前記算出部は、前記登録要求に含まれる第１の暗証番号と前記第１の文字列とが、前記サーバに記憶される前記クライアント端末の前記第２の暗証番号と前記第２の文字列とに合致した場合に、前記第１の不可逆な値を記憶部に格納する
請求項４に記載のクライアント端末。
【請求項６】
クライアント端末の第２の暗証番号と、前記クライアント端末に固有に与えられた機体識別番号と第１の文字列とから所定の計算式によって算出された第２の不可逆な値とを記憶する記憶部と、
前記クライアント端末から、第１の暗証番号と、前記機体識別番号と第１の文字列とから算出された第１の不可逆な値と、を含む認証要求を受信した際に、前記認証要求に含まれる前記第１の暗証番号と前記第１の不可逆な値とが、それぞれ、前記記憶部に記憶される前記クライアント端末の前記第２の暗証番号と前記第２の不可逆な値とに合致する場合に前記クライアント端末を認証する認証部と、
を備えるサーバ。
【請求項７】
前記記憶部は、前記第２の暗証番号と、第２の文字列とを記憶し、
前記クライアント端末から、前記第１の暗証番号と前記第１の文字列とを含む登録要求を受信した際に、前記登録要求に含まれる第１の暗証番号と前記第１の文字列とが、前記記憶部に記憶される前記クライアント端末の前記第２の暗証番号と前記第２の文字列とに合致した場合に、前記第１の不可逆な値を前記第２の不可逆な値として前記記憶部に登録し、前記第２の文字列を前記記憶部から削除する登録部
をさらに備える請求項６に記載のサーバ。
【請求項８】
クライアント端末が、
第１の文字列と固有に与えられた機体識別番号とから所定の計算方法によって第１の不可逆な値を算出し、
第１の暗証番号及び前記第１の不可逆な値を含む認証要求を送信し、
前記クライアント端末の第２の暗証番号と、前記機体識別番号と前記第１の文字列とから算出された第２の不可逆な値とを記憶する記憶部を備えるサーバが、
前記認証要求を前記クライアント端末から受信した際に、前記認証要求に含まれる前記第１の暗証番号と前記第１の不可逆な値とが、それぞれ、前記記憶部に記憶される前記クライアント端末の前記第２の暗証番号と前記第２の不可逆な値とに合致する場合に前記クライアント端末を認証する、
認証方法。
【請求項９】
クライアント端末が、
第１の文字列と自装置に固有に与えられた機体識別番号とから所定の計算方法によって第１の不可逆な値を算出し、
第１の暗証番号及び前記第１の不可逆な値を含む認証要求を、第２の暗証番号と、前記機体識別番号と前記第１の文字列とから算出された第２の不可逆な値とを記憶するサーバに送信し、
前記認証要求に含まれる前記第１の暗証番号と前記第１の不可逆な値とが、それぞれ、前記サーバに記憶される前記クライアント端末の前記第２の暗証番号と前記第２の不可逆な値とに合致する場合に前記サーバによって送信される前記認証要求に対する認証成功の通知を受信する、
被認証方法。
【請求項１０】
サーバが、
クライアント端末の第２の暗証番号と、前記クライアント端末に固有に与えられた機体識別番号と第１の文字列とから所定の計算式によって算出された第２の不可逆な値とを記憶部に記憶し、
前記クライアント端末から、第１の暗証番号と、前記機体識別番号と第１の文字列とから算出された第１の不可逆な値と、を含む認証要求を受信し、
前記認証要求に含まれる前記第１の暗証番号と前記第１の不可逆な値とが、それぞれ、前記記憶部に記憶される前記クライアント端末の前記第２の暗証番号と前記第２の不可逆な値とに合致する場合に前記クライアント端末を認証する、
認証方法。
【請求項１１】
クライアント端末に、
第１の文字列と自装置に固有に与えられた機体識別番号とから所定の計算方法によって第１の不可逆な値を算出するステップと、
第１の暗証番号及び前記第１の不可逆な値を含む認証要求を、第２の暗証番号と、前記機体識別番号と前記第１の文字列とから算出された第２の不可逆な値とを記憶するサーバに送信するステップと、
前記認証要求に含まれる前記第１の暗証番号と前記第１の不可逆な値とが、それぞれ、前記サーバに記憶される前記クライアント端末の前記第２の暗証番号と前記第２の不可逆な値とに合致する場合に前記サーバによって送信される前記認証要求に対する認証成功の通知を受信するステップと、
を実行させるための認証クライアントプログラム。
【請求項１２】
サーバに、
クライアント端末の第２の暗証番号と、前記クライアント端末に固有に与えられた機体識別番号と第１の文字列とから所定の計算式によって算出された第２の不可逆な値とを記憶部に記憶するステップと、
前記クライアント端末から、第１の暗証番号と、前記機体識別番号と第１の文字列とから算出された第１の不可逆な値と、を含む認証要求を受信するステップと、
前記認証要求に含まれる前記第１の暗証番号と前記第１の不可逆な値とが、それぞれ、前記記憶部に記憶される前記クライアント端末の前記第２の暗証番号と前記第２の不可逆な値とに合致する場合に前記クライアント端末を認証するステップと、
を実行させるための認証サーバプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗証番号に加え、もうひとつの要素との二つの要素で認証を行う認証システムに関する。
【背景技術】
【０００２】
図１１は、二要素認証を説明するための図である。二要素認証とは、利用者が認識している暗証番号やパスワード等の認証情報に加え、利用者が所持している身近な物品や情報を利用して２つ目の認証情報とするユーザ認証方式のことである。２つ目の認証情報には、例えば、キャッシュカード番号，ワンタイムパスワード，ＵＳＢメモリや特別なハードウェア等が挙げられる。
【０００３】
図１１では、２つ目の要素として、電子メールで通知されるワンタイムパスワードが用いられる例を示す。認証時、クライアント端末Ｐ１の利用者は、クライアント端末Ｐ１に利用者ＩＤと暗証番号を入力する。クライアント端末Ｐ１は、入力された利用者ＩＤと暗証番号とともに、例えば、事前に電子メールで通知されたワンタイムパスワードをサーバＰ２に送信する。サーバＰ２は、クライアント端末Ｐ１から送信される暗証番号とワンタイムパスワードとが、利用者ＩＤで特定される暗証番号とワンタイムパスワードとに合致すれば、利用者を認証する。二要素認証を用いることで、利用者のなりすましを低減することができる。
【０００４】
図１２は、携帯電話網において機体識別番号が用いられる認証の例を示す図である。図１２に示される認証は、例えば、有料コンテンツの利用の際やショッピングサイトにおける決算の際に行われる。機体識別番号は、例えば、携帯電話端末の製造業者や契約キャリア会社によって割り当てられる、クライアント端末Ｐ１固有の番号である。
【０００５】
図１２に示される例では、クライアント端末Ｐ１は、一般的にスマートフォンと呼ばれる携帯電話ではなく、キャリアの携帯電話網Ｐ３を用いて通話を行う携帯電話端末である。クライアント端末Ｐ１は、利用者がサーバＰ２によって提供される有料コンテンツの利用を開始する際に、サーバＰ２にアクセスを行う。図１２に示される認証画面Ｐ４がサーバＰ２から送信され、利用者によって認証画面Ｐ４の“クリックしてください”の部分がクリックされると、クライアント端末Ｐ１は、機体識別番号を含む認証要求をサーバＰ２に送信する。
【０００６】
サーバＰ２は、サーバＰ２が提供する有料コンテンツを契約しているクライアント端末Ｐ１の機体識別番号を保持している。サーバＰ２は、クライアント端末Ｐ１から認証要求を受信すると、認証要求に含まれる機体識別番号が、サーバＰ２が保持するクライアント端末Ｐ１の機体識別番号に合致するか否かを判定し、合致した場合にクライアント端末Ｐ１を認証する。
【０００７】
図１２に示される例では、クライアント端末Ｐ１は、スマートフォン等の高機能の携帯電話端末ではなく、使用する通信網が携帯電話網Ｐ３に限られている。また、携帯電話網Ｐ３はキャリア毎に管理されており安全性が高い通信網である。そのため、図１２に示される例では、クライアント端末Ｐ１の機体識別番号が携帯電話網Ｐ３に流れたとしても悪意のある第３者によって不正に取得されたり、改ざんされたりという可能性が低かった。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１０−７９７９５号公報
【特許文献２】特開２００４−３６４１６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、スマートフォン等の携帯電話端末では、インターネット網を利用するため、機体識別番号が用いられた認証が行われる際に、以下のような問題が考えられる。
【００１０】
図１３は、スマートフォンが機体識別番号によって認証される場合の問題点を説明するための図である。図１３に示される例では、クライアント端末Ｐ１は、スマートフォン等の高性能の携帯電話端末であり、インターネット網Ｐ５を利用して通信を行う。図１３において、図１２において説明されたような機体識別番号によってクライアント端末Ｐ１が認証される場合には、（１）クライアント端末Ｐ１を装ったコンピュータによる機体識別番号の改ざんやなりすまし攻撃、（２）インターネット網Ｐ５における機体識別番号の不正取得、（３）機体識別番号の不正収集、等の機体識別番号の流出の可能性が高まる。機体識別番号は、有料コンテンツやショッピング等において認証で用いられる為、流出すると悪用されて利用者にとって悪影響がもたらされる可能性が高い。
【００１１】
本発明では、機体識別番号の流出を防ぐ認証システムを提供することを課題とする。
【課題を解決するための手段】
【００１２】
本発明は、上記課題を解決するために、認証システムに以下の手段を備えることとした。即ち、本発明の態様の一つは、クライアント端末とサーバとを含む認証システムであって、クライアント端末は、第１の文字列と固有に与えられた機体識別番号とから所定の計算方法によって第１の不可逆な値を算出する算出部と、第１の暗証番号及び第１の不可逆な値を含む認証要求を送信する送信部と、を含み、サーバは、クライアント端末の第２の暗証番号、及び機体識別番号と第１の文字列とから算出された第２の不可逆な値を記憶する記憶部と、認証要求をクライアント端末から受信した際に、認証要求に含まれる第１の暗証番号と第１の不可逆な値とが、それぞれ、記憶部に記憶されるクライアント端末の第２の暗証番号と第２の不可逆な値とに合致する場合にクライアント端末を認証する認証部と、を含む。
【００１３】
本発明の態様の一つによれば、クライアント端末の認証に機体識別番号と第１の文字列とから所定の計算方法によって算出された第１の不可逆な値を用いることによって、クライアント端末とサーバとの間に存在するネットワークに機体識別番号が流れることを防ぐことができる。また、万一、第１の不可逆な値が第３者に不正に取得された場合でも、第１の不可逆な値は、他のサーバにとっては無効な値であるため、影響をサーバのみに抑えることができる。また、第１の不可逆な値から機体識別番号を類推することは困難であるため、悪意のある第３者によりなりすまし攻撃を防ぐことができる。
【００１４】
また、本発明の態様の一つである認証システムにおいて、クライアント端末の送信部は、第１の暗証番号と、第１の文字列と、第１の不可逆な値とを含む登録要求をサーバに送信し、サーバの記憶部は、クライアント端末の第２の暗証番号と、第２の文字列とを記憶し、サーバは、登録要求をクライアント端末から受信した際に、登録要求に含まれる第１の暗証番号と第１の文字列とが、記憶部に記憶されるクライアント端末の第２の暗証番号と第２の文字列とに合致した場合に、第１の不可逆な値を第２の不可逆な値として記憶部に登録し、第２の文字列を記憶部から削除する登録部をさらに備えるようにしてもよい。これによって、第１の文字列が変更された場合に、第１の不可逆な値も変更されるため、定期的に第１の文字列およびサーバが記憶する第２の文字列を設定し直すことによって、
セキュリティを高めることができる。また、第１の文字列が紛失された場合でも、第１の文字列と第２の文字列とを設定し直すことで第１の不可逆な値が設定し直されるので、紛失しても安全である。
【００１５】
また、本発明の態様の一つである認証システムにおいて、クライアント端末は、登録要求に含まれる第１の暗証番号と前記第１の文字列とが、サーバの記憶部に記憶されるクライアント端末の第２の暗証番号と第２の文字列とに合致した場合に、第１の不可逆な値を記憶するようにしてもよい。このように、第１の不可逆な値を記憶しておくことによって、認証の度に所定の計算式による計算を行う必要がなくなる。
【００１６】
本発明の他の態様の一つは、第１の文字列と自装置に固有に与えられた機体識別番号とから所定の計算方法によって第１の不可逆な値を算出する算出部と、第１の暗証番号及び第１の不可逆な値を含む認証要求を、第２の暗証番号と、機体識別番号と第１の文字列とから算出された第２の不可逆な値とを記憶するサーバに送信する送信部と、認証要求に含まれる第１の暗証番号と前記第１の不可逆な値とが、それぞれ、サーバに記憶されるクライアント端末の第２の暗証番号と第２の不可逆な値とに合致する場合にサーバによって送信される認証要求に対する認証成功の通知を受信する受信部と、を備えるクライアント端末である。
【００１７】
本発明の態様の一つのクライアント端末は、送信部は、第１の暗証番号と、第１の文字列と、第１の不可逆な値とを含む登録要求を、第２の暗証番号と第２の文字列とを記憶するサーバに送信し、登録要求に含まれる第１の暗証番号と第１の文字列とが、サーバに記憶されるクライアント端末の第２の暗証番号と第２の文字列とに合致した場合に、第１の不可逆な値を記憶するようにしてもよい。
【００１８】
また、本発明の他の態様の一つは、クライアント端末の第２の暗証番号、及びクライアント端末に固有に与えられた機体識別番号と第１の文字列とから所定の計算式によって算出された第２の不可逆な値を記憶する記憶部と、クライアント端末から、第１の暗証番号と、機体識別番号と第１の文字列とから算出された第１の不可逆な値と、を含む認証要求を受信した際に、認証要求に含まれる第１の暗証番号と第１の不可逆な値とが、それぞれ、記憶部に記憶されるクライアント端末の第２の暗証番号と第２の不可逆な値とに合致する場合にクライアント端末を認証する認証部と、を備えるサーバである。
【００１９】
本発明の態様の一つのサーバは、記憶部は、第２の暗証番号と、第２の文字列とを記憶し、クライアント端末から、第１の暗証番号と第１の文字列とを含む登録要求を受信した際に、登録要求に含まれる第１の暗証番号と第１の文字列とが、記憶部に記憶されるクライアント端末の第２の暗証番号と第２の文字列とに合致した場合に、第１の不可逆な値を第２の不可逆な値として記憶部に登録し、第２の文字列を記憶部から削除する登録部をさらに備えるようにしてもよい。
【００２０】
更に、本発明は、態様の一つとして、方法、又はコンピュータによって実行されるプログラムとしても把握することが可能である。また、本発明の態様の一つは、そのようなプログラムをコンピュータその他の装置、機械等が読み取り可能な記録媒体に記録したものでもよい。ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。
【００２１】
例えば、本発明の態様の一つは、クライアント端末が、第１の文字列と固有に与えられた機体識別番号とから所定の計算方法によって第１の不可逆な値を算出し、第１の暗証番号及び第１の不可逆な値を含む認証要求を送信し、クライアント端末の第２の暗証番号、
及び機体識別番号と第１の文字列とから算出された第２の不可逆な値を記憶する記憶部を備えるサーバが、認証要求をクライアント端末から受信した際に、認証要求に含まれる第１の暗証番号と第１の不可逆な値とが、それぞれ、記憶部に記憶されるクライアント端末の第２の暗証番号と第２の不可逆な値とに合致する場合にクライアント端末を認証する、認証方法である。
【発明の効果】
【００２２】
本発明によれば、機体識別番号の流出を防ぐことができる。
【図面の簡単な説明】
【００２３】
【図１】認証システムの構成例を示す図である。
【図２】クライアント端末およびサーバのハードウェア構成例を示す図である。
【図３】クライアント端末の機能構成例を示す図である。
【図４】登録処理におけるクライアント端末の処理フローの一例を示す図である。
【図５】認証処理におけるクライアント端末の処理フローの例を示す図である。
【図６】サーバの機能構成例を示す図である。
【図７】管理テーブルの一例を示す図である。
【図８Ａ】サーバの登録処理のフローの例が示される。
【図８Ｂ】サーバの認証処理のフローの例が示される。
【図９】登録処理のシーケンスの例を示す図である。
【図１０】認証処理のシーケンスの例を示す図である。
【図１１】二要素認証を説明するための図である。
【図１２】携帯電話網において機体識別番号が用いられる認証の例を示す図である。
【図１３】スマートフォンが機体識別番号によって認証される場合の問題点を説明するための図である。
【発明を実施するための形態】
【００２４】
以下、図面に基づいて、本発明の実施の形態を説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【００２５】
＜第１実施形態＞
図１は、認証システムの構成例を示す図である。認証システムは、クライアント端末１とサーバ２とを含む。認証システムでは、クライアント端末１とサーバ２とは、クライアント端末１の機体識別番号がハッシュ関数と利用者個別のシードとを用いて暗号化（ハッシュ化）された値（以降、ハッシュ化機体識別番号）を保持している。シードとは、文字列であって、例えば、サーバ２によって提供されるサービスの契約時に利用者とサービス提供業者とによって決定される合い言葉、キーワード等である。
【００２６】
認証システムにおいて行われる処理は、大きく２つに分かれる。１つ目は、ハッシュ化機体識別番号をクライアント端末１及びサーバ２の両者に登録するための登録処理である。２つ目は、クライアント端末１を認証する認証処理である。
【００２７】
登録処理では、クライアント端末１が機体識別番号をハッシュ関数とシードとを用いることによって暗号化してハッシュ化機体識別番号を生成し、記憶するとともに、サーバ２にハッシュ化機体識別番号を通知する。サーバ２は、通知されたハッシュ化機体識別番号を記憶する。
【００２８】
認証処理では、クライアント端末１は、認証画面から利用者によって入力された利用者ＩＤと暗証番号とともにハッシュ化機体識別番号をサーバ２に送信する。利用者ＩＤは、例えば、サーバ２の管理者からサービスの契約時に利用者に通知される、該サービスの利
用者を識別するための情報である。暗証番号は、例えば、サーバ２の管理者からサービスの契約時に利用者に通知される、該サービスの利用者を認証するための番号である。暗証番号は、サーバ２によって提供されるサービスの利用者全員に共通するものであってもよいし、各利用者で異なる個別の番号であってもよい。サーバ２は、受信した暗証番号とハッシュ化機体識別番号とが、サーバ２に保持される暗証番号とハッシュ化機体識別番号とに合致した場合に、クライアント端末１を認証する。
【００２９】
（クライアント端末）
図２は、クライアント端末１のハードウェア構成例を示す図である。クライアント端末１は、例えば、スマートフォン等の携帯電話端末である。クライアント端末１は、サーバ２によって提供されるサービスを契約している利用者の携帯電話端末である。クライアント端末１は、プロセッサ１０１，主記憶装置１０２，入力装置１０３，出力装置１０４，補助記憶装置１０５，可搬記録媒体駆動装置１０６，及びネットワークインタフェース１０７を備え、これらがバス１０９により互いに接続されている情報処理装置である。情報処理装置は、例えば、携帯電話端末，汎用のパーソナルコンピュータ，通信機能を有するゲーム装置である。第１実施形態では、クライアント端末１は、携帯電話端末として説明する。
【００３０】
入力装置１０３は、例えば、操作ボタン等である。また、入力装置１０３は、マイクロフォン等の音声入力装置も含まれる。入力装置１０３から入力されたデータは、プロセッサ１０１に出力される。
【００３１】
ネットワークインタフェース１０７は、ネットワークとの情報の入出力を行うインタフェースである。ネットワークインタフェース１０７は、有線のネットワーク、および、無線のネットワークと接続する。ネットワークインタフェース１０７は、例えば、ＮＩＣ（Network Interface Card），無線ＬＡＮ（Local Area Network）カード，携帯電話網に接続するための無線回路等である。ネットワークインタフェース１０７で受信されたデータ等は、プロセッサ１０１に出力される。
【００３２】
主記憶装置１０２は、プロセッサ１０１に、補助記憶装置１０５に格納されているプログラムをロードする記憶領域および作業領域を提供したり、バッファとして用いられたりする。主記憶装置１０２は、例えば、ＲＡＭ（Random Access Memory）のような半導体メモリである。
【００３３】
補助記憶装置１０５は、様々なプログラムや、各プログラムの実行に際してプロセッサ１０１が使用するデータを格納する。補助記憶装置１０５は、例えば、ＥＰＲＯＭ（Erasable Programmable ROM）、ハードディスク（Hard Drive Disc）である。補助記憶装置１０５は、例えば、オペレーティングシステム（ＯＳ），認証クライアントプログラム，その他様々なアプリケーションプログラムを保持する。
【００３４】
可搬記録媒体駆動装置１０６は、可搬記録媒体を駆動し、可搬記録媒体に記録されたデータを読み出す。読み出されたデータはプロセッサ１０１に出力される。可搬記録媒体は、例えば、フラッシュメモリカードのような記録媒体である。
【００３５】
プロセッサ１０１は、例えば、ＣＰＵ（Central Processing Unit）や、ＤＳＰ（Digital Signal Processor）である。プロセッサ１０１は、補助記憶装置１０５に保持された
ＯＳや様々なアプリケーションプログラムを主記憶装置１０２にロードして実行することによって、様々な処理を実行する。
【００３６】
出力装置１０４は、プロセッサ１０１の処理の結果を出力する。出力装置１０４は、デ
ィスプレイや、スピーカ等の音声出力装置を含む。
【００３７】
例えば、クライアント端末１は、プロセッサ１０１が補助記憶装置１０５に保持される認証クライアントプログラムを主記憶装置１０２にロードして実行する。クライアント端末１は、認証クライアントプログラムの実行を通じて、サーバ２と協働して上述の登録処理及び認証処理を実行する。
【００３８】
図３は、クライアント端末１の機能構成例を示す図である。クライアント端末１は、プロセッサ１０１が認証クライアントプログラムを実行することによって、アクセス要求部１１，ユーザ入力受信部１２，算出部１３，登録要求部１４，認証要求部１５，及び画面出力部１６として動作する。また、クライアント端末１は、認証クライアントプログラムの実行を通じて、又は静的に、主記憶装置１０２の記憶領域に記憶部１７を生成する。
【００３９】
アクセス要求部１１は、例えば、利用者の操作等によるサーバ２によって提供されるサービスの利用開始の指示が入力されると、サーバ２に対してアクセス要求を送信する。
【００４０】
ユーザ入力受信部１２は、登録処理のときには、利用者によって認証画面に入力される利用者ＩＤ，暗証番号，及びシードの入力を入力装置１０３を通じて受信する。ユーザ入力受信部１２は、利用者ＩＤと暗証番号とシードとを登録要求部１４に出力する。ユーザ入力受信部１２は、シードを算出部１３に出力する。
【００４１】
ユーザ入力受信部１２は、認証処理のときには、利用者によって認証画面に入力される利用者ＩＤと暗証番号とを入力装置１０３を通じて受信する。ユーザ入力受信部１２は、利用者ＩＤと暗証番号とを認証要求部１５に出力する。
【００４２】
算出部１３は、登録処理のときに、ユーザ入力受信部１２からシードを受信すると、機体識別番号をハッシュ関数とシードとを用いて暗号化し、ハッシュ化機体識別番号を生成する。具体的には、算出部１３は、機体識別番号とシードとを合わせた値をハッシュ化してハッシュ化機体識別番号を生成する。ハッシュ関数には、例えば、ＳＨＡ（Secure Hash Algorithm）がある。機体識別番号は、登録要求部１４に出力される。また、サーバ２
からハッシュ化機体識別番号の登録成功が通知されると、ハッシュ化機体識別番号は、記憶部１７に記憶される。
【００４３】
登録要求部１４は、登録処理のときに、ユーザ入力受信部１２から利用者ＩＤと暗証番号とシードとを受信する。また、登録要求部１４は、登録処理のときに算出部１３からハッシュ化機体識別番号を受信する。登録要求部１４は、利用者ＩＤ，暗証番号，シード，及びハッシュ化機体識別番号を含む登録要求を生成し、サーバ２に送信する。
【００４４】
認証要求部１５は、認証処理のときに、ユーザ入力受信部１２から利用者ＩＤと暗証番号とを受信する。また、認証要求部１５は記憶部１７からハッシュ化機体識別番号を取得する。認証要求部１５は、利用者ＩＤ，暗証番号，及びハッシュ化機体識別番号を含む認証要求を生成し、サーバ２に送信する。
【００４５】
画面出力部１６は、ハッシュ化機体識別番号の登録結果（成功又は失敗）、及び認証結果（成功又は失敗）に応じた画面をサーバ２から受信する。画面出力部１６は、サーバ２から受信される登録結果又は認証結果に応じた画面を出力装置１０４に出力する。サーバ２から受信される登録結果又は認証結果に応じた画面は、出力装置１０４（ディスプレイ）に表示される。
【００４６】
記憶部１７は、サーバ２のＵＲＩ（Uniform Resource Identifier）及びハッシュ化機
体識別番号を記憶する。
【００４７】
図４は、登録処理におけるクライアント端末１の処理フローの一例を示す図である。図４に示される処理フローは、例えば、利用者の操作によって、サーバ２によって提供されるサービスを利用するための認証クライアントプログラムが起動し、利用者の操作によって、登録処理が選択されると、開始される。
【００４８】
認証クライアントプログラムが起動すると、アクセス要求部１１がサーバ２にアクセス要求を送信し、サーバ２から、例えば、認証情報登録画面Ｇ１を受信する。認証情報登録画面Ｇ１には、利用者ＩＤ，暗証番号，及びシードを入力する欄が設けられている。Ｓ１では、ユーザ入力受信部１２は、出力装置１０４（ディスプレイ）に表示される認証情報登録画面Ｇ１に利用者によって入力された利用者ＩＤ，暗証番号，及びシードを受信する。
【００４９】
Ｓ２では、算出部１３は、クライアント端末１の機体識別番号とシードとを合わせた値をハッシュ関数でハッシュ化し、ハッシュ化機体識別番号を生成する。
【００５０】
Ｓ３では、登録要求部１４は、利用者ＩＤ，暗証番号，シード，及びハッシュ化機体識別番号を含む登録要求を生成し、サーバ２へ送信する。
【００５１】
Ｓ４では、画面出力部１６は、サーバ２からの応答が登録成功か否かを判定する。サーバ２からの応答が登録成功である場合には（Ｓ４：Ｙｅｓ）、処理がＳ５に進む。サーバ２からの応答が登録失敗である場合には（Ｓ４：Ｎｏ）、処理がＳ７に進む。
【００５２】
Ｓ５では、算出部１３は、ハッシュ化機体識別番号を記憶部１７に格納する。Ｓ６では、画面出力部１６は、出力装置１０４（ディスプレイ）にサーバ２から受信した登録成功を示す画面を出力する。その後、クライアント端末１における登録処理が終了する。
【００５３】
Ｓ７では、画面出力部１６は、出力装置１０４（ディスプレイ）に登録失敗を示す画面を出力する。その後、クライアント端末１における登録処理が終了する。なお、登録失敗の場合には、処理がＳ１に戻って、再度利用者の入力を促してもよい。
【００５４】
図５は、認証処理におけるクライアント端末１の処理フローの例を示す図である。図５に示される処理フローは、例えば、利用者の操作によって、サーバ２によって提供されるサービスを利用するための認証クライアントプログラムが起動し、利用者の操作によって、認証処理が選択されると、開始される。
【００５５】
認証クライアントプログラムが起動し、認証処理が選択されると、アクセス要求部１１がサーバ２にアクセス要求を送信し、サーバ２から、例えば、認証画面Ｇ２を受信する。認証情報登録画面Ｇ２には、利用者ＩＤと暗証番号とを入力する欄が設けられている。Ｓ１１では、ユーザ入力受信部１２は、出力装置１０４（ディスプレイ）に表示される認証画面Ｇ２に利用者によって入力された利用者ＩＤ及び暗証番号を受信する。
【００５６】
Ｓ１２では、認証要求部１５は、記憶部１７からハッシュ化機体識別番号を読出し、利用者ＩＤ，暗証番号，及びハッシュ化機体識別番号を含む認証要求を生成し、サーバ２に送信する。
【００５７】
Ｓ１３では、画面出力部１６は、認証要求に対するサーバ２からの応答が認証成功であるか否かを判定する。認証要求に対するサーバ２からの応答が認証成功である場合には（Ｓ１３：Ｙｅｓ）、処理がＳ１４に進む。認証要求に対するサーバ２からの応答が認証失
敗である場合には（Ｓ１３：Ｎｏ）、処理がＳ１５に進む。
【００５８】
Ｓ１４では、画面出力部１６は、出力装置１０４（ディスプレイ）にサーバ２から受信した認証成功を示す画面を出力する。その後、クライアント端末１における認証処理が終了する。
【００５９】
Ｓ１５では、画面出力部１６は、出力装置１０４（ディスプレイ）に認証失敗を示す画面を出力する。その後、クライアント端末１における認証処理が終了する。なお、認証失敗の場合には、処理がＳ１１に戻って、再度利用者の入力を促してもよい。
【００６０】
（サーバ）
サーバ２のハードウェア構成は、クライアント端末１と同じく図２で示される。サーバ２は、有料コンテンツやショッピングサイト等を提供するサーバである。サーバ２は、プロセッサ２０１，主記憶装置２０２，入力装置２０３，出力装置２０４，補助記憶装置２０５，可搬記録媒体駆動装置２０６，及びネットワークインタフェース２０７を備え、これらがバス２０９により互いに接続されている情報処理装置である。情報処理装置は、例えば、サーバマシンなどの専用のコンピュータである。
【００６１】
入力装置２０３は、例えば、キーボードや、マウス等のポインティングデバイスである。入力装置２０３から入力されたデータは、プロセッサ２０１に出力される。
【００６２】
ネットワークインタフェース２０７は、ネットワークとの情報の入出力を行うインタフェースである。ネットワークインタフェース２０７は、有線のネットワーク、および、無線のネットワークと接続する。ネットワークインタフェース２０７は、例えば、ＮＩＣ，無線ＬＡＮカード、又は、ＳＯＮＥＴ／ＳＤＨ等の光回線に接続するための光コネクタ等である。ネットワークインタフェース２０７で受信されたデータ等は、プロセッサ２０１に出力される。
【００６３】
主記憶装置２０２は、プロセッサ２０１に、補助記憶装置２０５に格納されているプログラムをロードする記憶領域および作業領域を提供したり、バッファとして用いられたりする。主記憶装置２０２は、例えば、ＲＡＭのような半導体メモリである。
【００６４】
補助記憶装置２０５は、様々なプログラムや、各プログラムの実行に際してプロセッサ２０１が使用するデータを格納する。補助記憶装置２０５は、例えば、ＥＰＲＯＭ、ハードディスクである。補助記憶装置２０５は、例えば、オペレーティングシステム（ＯＳ），認証サーバプログラム，その他様々なアプリケーションプログラムを保持する。
【００６５】
可搬記録媒体駆動装置２０６は、可搬記録媒体を駆動し、可搬記録媒体に記録されたデータを読み出す。読み出されたデータはプロセッサ２０１に出力される。可搬記録媒体は、例えば、ＵＳＢ（Universal Serial Bus）フラッシュメモリ，フラッシュメモリカード，ＣＤ（Compact Disc），及びＤＶＤ（Digital Versatile Disc）のような記録媒体である。
【００６６】
プロセッサ２０１は、例えば、ＣＰＵや、ＤＳＰである。プロセッサ２０１は、補助記憶装置２０５に保持されたＯＳや様々なアプリケーションプログラムを主記憶装置２０２にロードして実行することによって、様々な処理を実行する。
【００６７】
出力装置２０４は、プロセッサ２０１の処理の結果を出力する。出力装置２０４は、ディスプレイを含む。
【００６８】
例えば、サーバ２は、プロセッサ２０１が補助記憶装置２０５に保持される認証サーバプログラムを主記憶装置２０２にロードして実行する。サーバ２は、認証サーバプログラムの実行を通じて、クライアント端末１と協働して上述の登録処理及び認証処理を実行する。
【００６９】
なお、サーバ２として機能する情報処理装置は、サーバマシンのような専用のコンピュータに限定されず、パーソナルコンピュータのような汎用のコンピュータであってもよい。
【００７０】
図６は、サーバ２の機能構成例を示す図である。サーバ２は、プロセッサ２０１が認証サーバプログラムを実行することによって、入力受付部２１，画面送信部２２，登録部２４，及び認証部２５として動作する。また、サーバ２は、認証サーバプログラムの実行を通じて、又は、静的に、主記憶装置２０２の記憶領域に記憶部２３を生成する。
【００７１】
入力受付部２１は、ネットワークインタフェース２０７からプロセッサ２０１に入力されるデータを受信する。例えば、ＬＡＮによって接続するサーバ２の管理端末から、利用者ＩＤ，暗証番号，及びシードの登録指示の入力を受け付ける。受け付けられた利用者ＩＤ，暗証番号，シードは、記憶部２３の管理テーブル２３１（後述）に格納される。
【００７２】
また、入力受付部２１は、クライアント端末１から利用者ＩＤ，暗証番号，シード，及びハッシュ化機体識別番号を含む登録要求を受信すると、利用者ＩＤ，暗証番号，シード，及びハッシュ化機体識別番号を登録部２４に出力する。
【００７３】
さらに、入力受付部２１は、クライアント端末１から利用者ＩＤ，暗証番号，及びハッシュ化機体識別番号を含む認証要求を受信すると、利用者ＩＤ，暗証番号，及びハッシュ化機体識別番号を認証部２５に出力する。
【００７４】
登録部２４は、入力受付部２１から、利用者ＩＤ，暗証番号，シード，及びハッシュ化機体識別番号を含む登録要求が入力されると、記憶部２３に格納される管理テーブル２３１から登録要求の利用者ＩＤに対応するエントリを読み出す。登録部２４は、登録要求に含まれる暗証番号とシードとが、読み出されたエントリの暗証番号とシードとに合致するか否かを判定し、合致していた場合に、登録要求に含まれるハッシュ化機体識別番号を管理テーブル２３１の該当エントリに格納する。その後、登録部２４は、該当エントリのシードを削除する。また、登録部２４は、画面送信部２２に登録成功を通知する。
【００７５】
登録要求に含まれる暗証番号とシードとが、読み出されたエントリの暗証番号とシードとに合致しない場合には、登録部２４は、登録失敗を判定し、登録失敗を画面送信部２２に通知する。
【００７６】
認証部２５は、入力受付部２１から、利用者ＩＤ，暗証番号，及びハッシュ化機体識別番号を含む認証要求が入力されると、記憶部２３に格納される管理テーブル２３１から認証要求の利用者ＩＤに対応するエントリを読み出す。認証部２５は、認証要求に含まれる暗証番号とハッシュ化機体識別番号とが、読み出されたエントリの暗証番号とハッシュ化機体識別番号とに合致するか否かを判定する。
【００７７】
認証要求に含まれる暗証番号とハッシュ化機体識別番号とが、読み出されたエントリの暗証番号とハッシュ化機体識別番号とに合致する場合には、認証部２５は、認証成功を画面送信部２２に通知する。認証要求に含まれる暗証番号とハッシュ化機体識別番号とが、読み出されたエントリの暗証番号とハッシュ化機体識別番号とに合致しない場合には、認証部２５は、認証失敗を画面送信部２２に通知する。
【００７８】
画面送信部２２は、登録部２４の登録結果（成功、失敗）又は認証部２５の認証結果（成功、失敗）を受けて、登録結果又は認証結果に応じた画面を、登録要求又は認証要求の応答とともにクライアント端末１に送信する。
【００７９】
記憶部２３は、利用者の情報を管理するための管理テーブル２３１を有する。図７は、管理テーブル２３１の一例を示す図である。管理テーブル２３１のエントリは、管理番号，利用者ＩＤ，暗証番号，ハッシュ化機体識別番号，及びシードのフィールドを有する。
【００８０】
管理テーブル２３１のエントリは、サーバ２に接続するサーバ２の管理端末からの登録指示に従って、作成される。「管理番号」は、管理テーブル２３１の各エントリを識別するための番号である。「利用者ＩＤ」，「暗証番号」，及び「シード」には、管理端末から入力された値が格納される。「ハッシュ化機体識別番号」は、登録要求に含まれるハッシュ化機体識別番号が登録部２４によって格納される。「ハッシュ化機体識別番号」が格納されると、該エントリの「シード」は登録部２４によって削除される。
【００８１】
管理テーブル２３１のエントリの「シード」が格納されている場合には、該エントリの利用者ＩＤによって特定されるクライアント端末１と登録処理中であることが示される。登録処理中にクライアント端末１から認証要求が送信されてきた場合には、該認証要求に対する認証は行われないようにしてもよいし、認証失敗とともに登録処理の実行を促すメッセージを含む画面がクライアント端末１に送信されるようにしてもよい。第２実施形態においては、認証失敗が通知される。
【００８２】
なお、図７に示される管理テーブル２３１には、便宜上、「ハッシュ化機体識別番号」と「シード」との両方に値が格納されているが、実際には、登録処理及び認証処理の進行に応じて何れか一方にのみ値が格納される。
【００８３】
図８Ａ及び図８Ｂは、サーバ２の処理フローの例を示す図である。図８Ａでは、登録処理のフローの例が示される。図８Ｂにおいては、認証処理のフローの例が示される。サーバ２にデータが入力されると、図８Ａのフローが開始される。
【００８４】
Ｓ２１では、入力受付部２１が、入力されたデータを判別する。例えば、入力がサーバ２の管理端末からの登録指示である場合には、処理がＳ２２に進む。入力が登録要求である場合には、処理がＳ２６に進む。入力が認証要求である場合には、処理がＳ３３に進む。
【００８５】
Ｓ２２では、入力受付部２１は、サーバ２の管理端末から利用者ＩＤが入力されると、記憶部２３の管理テーブル２３１に新たなエントリを生成し、新たなエントリの「利用者ＩＤ」に入力された利用者ＩＤを格納する。
【００８６】
Ｓ２３では、入力受付部２１は、サーバ２の管理端末から入力される暗証番号を管理テーブル２３１の新たなエントリの「暗証番号」に格納する。
【００８７】
Ｓ２４では、入力受付部２１は、サーバ２の管理端末から入力されるシードを管理テーブル２３１の新たなエントリの「シード」に格納する。
【００８８】
Ｓ２５では、画面送信部２２は、サーバ２の管理端末に対して、登録成功の画面を送信する。その後、処理がＳ２１に戻る。
【００８９】
Ｓ２６では、登録部２４は、入力受付部２１から登録要求が入力されると、記憶部２３
の管理テーブル２３１に、登録要求に含まれる利用者ＩＤが合致するエントリがあるか否かを判定する。登録要求に含まれる利用者ＩＤが合致するエントリがある場合には（Ｓ２６：Ｙｅｓ）、処理がＳ２７に進む。登録要求に含まれる利用者ＩＤが合致するエントリがない場合には（Ｓ２６：Ｎｏ）、処理がＳ３２に進む。
【００９０】
Ｓ２７では、登録部２４は、登録要求に含まれる利用者ＩＤが合致するエントリを記憶部２３から読み出し、登録要求に含まれる暗証番号と、読み出されたエントリに含まれる暗証番号とを比較する。登録要求に含まれる暗証番号と読み出されたエントリに含まれる暗証番号とが合致する場合には（Ｓ２７：Ｙｅｓ）、処理がＳ２８に進む。登録要求に含まれる暗証番号と読み出されたエントリに含まれる暗証番号とが合致しない場合には（Ｓ２７：Ｎｏ）、処理がＳ３２に進む。
【００９１】
Ｓ２８では、登録部２４は、登録要求に含まれるシードと読み出されたエントリに含まれるシードとを比較する。登録要求に含まれるシードと読み出されたエントリに含まれるシードとが合致する場合には（Ｓ２８：Ｙｅｓ）、処理がＳ２９に進む。登録要求に含まれるシードと読み出されたエントリに含まれるシードとが合致しない場合には（Ｓ２８：Ｎｏ）、処理がＳ３２に進む。
【００９２】
Ｓ２９では、登録部２４は、登録要求に含まれるハッシュ化機体識別番号を管理テーブル２３１の該当エントリの「ハッシュ化機体識別番号」のフィールドに格納する。
【００９３】
Ｓ３０では、登録部２４は、管理テーブル２３１の該当エントリの「シード」のフィールドに格納されているシードを削除する。
【００９４】
Ｓ３１では、登録部２４は、画面送信部２２に登録成功を通知する。画面送信部２２は、登録成功の通知を受けると、登録成功を示す画面を登録要求の応答（登録成功）ともにクライアント端末１に送信する。その後、処理がＳ２１に戻る。
【００９５】
Ｓ３２では、登録部２４は、画面送信部２２に登録失敗を通知する。画面送信部２２は、登録失敗の通知を受けると、登録失敗を示す画面を登録要求の応答（登録失敗）とともにクライアント端末１に送信する。なお、このとき送信される登録失敗を示す画面には、登録失敗の原因に応じたメッセージが含まれていてもよい。例えば、Ｓ２６において管理テーブル２３１に登録要求に含まれる利用者ＩＤに対応するエントリがない場合には、登録失敗を示す画面に、利用者ＩＤの確認を促すメッセージや、サーバ２の管理者への連絡を促すメッセージが含まれてもよい。例えば、Ｓ２７において、登録要求に含まれる暗証番号が管理テーブル２３１から読み出されたエントリの暗証番号に合致しなかった場合には、暗証番号の確認を促すメッセージが含まれてもよい。例えば、Ｓ２８において、登録要求に含まれるシードが管理テーブル２３１から読み出されたエントリに含まれるシードに合致しなかった場合には、シードの確認を促すメッセージが含まれてもよい。例えば、再度利用者ＩＤと暗証番号とを入力するように利用者に促すメッセージが含まれていてもよい。その後、処理がＳ２１に戻る。
【００９６】
Ｓ３３では、認証部２５は、入力受付部２１から認証要求が入力されると、記憶部２３の管理テーブル２３１に、認証要求に含まれる利用者ＩＤが合致するエントリがあるか否かを判定する。認証要求に含まれる利用者ＩＤが合致するエントリがある場合には（Ｓ３３：Ｙｅｓ）、処理がＳ３４に進む。認証要求に含まれる利用者ＩＤが合致するエントリがない場合には（Ｓ３３：Ｎｏ）、処理がＳ３７に進む。
【００９７】
Ｓ３４では、認証部２５は、認証要求に含まれる利用者ＩＤが合致するエントリを記憶部２３から読み出し、認証要求に含まれる暗証番号と、読み出されたエントリに含まれる
暗証番号とを比較する。認証要求に含まれる暗証番号と読み出されたエントリに含まれる暗証番号とが合致する場合には（Ｓ３４：Ｙｅｓ）、処理がＳ３５に進む。認証要求に含まれる暗証番号と読み出されたエントリに含まれる暗証番号とが合致しない場合には（Ｓ３４：Ｎｏ）、処理がＳ３７に進む。
【００９８】
Ｓ３５では、認証部２５は、認証要求に含まれるハッシュ化機体識別番号と読み出されたエントリに含まれるハッシュ化機体識別番号とを比較する。認証要求に含まれるハッシュ化機体識別番号と読み出されたエントリに含まれるハッシュ化機体識別番号とが合致する場合には（Ｓ３５：Ｙｅｓ）、処理がＳ３６に進む。認証要求に含まれるハッシュ化機体識別番号と読み出されたエントリに含まれるハッシュ化機体識別番号とが合致しない場合には（Ｓ３５：Ｎｏ）、処理がＳ３７に進む。また、読み出されたエントリにハッシュ化機体識別番号が含まれていない場合にも（Ｓ３５：Ｎｏ）、処理がＯＰ３７に進んでもよい。読み出されたエントリにハッシュ化機体識別番号が含まれていない場合は、クライアント端末１の登録処理が完了していないことが示される。
【００９９】
Ｓ３６では、認証部２５は、画面送信部２２に認証成功を通知する。画面送信部２２は、認証成功の通知を受けると、認証要求の応答（認証成功）とともに、認証成功を示す画面を送信する。その後、処理がＳ２１に戻る。
【０１００】
Ｓ３７では、認証部２５は、画面送信部２２に認証失敗を通知する。画面送信部２２は、認証失敗の通知を受けると、認証失敗を示す画面を認証要求の応答（認証失敗）とともにクライアント端末１に送信する。なお、このとき送信される認証失敗を示す画面には、認証失敗の原因に応じたメッセージが含まれていてもよい。例えば、Ｓ３３において管理テーブル２３１に認証要求に含まれる利用者ＩＤに対応するエントリがない場合には、認証失敗を示す画面に、利用者ＩＤの確認を促すメッセージや、サーバ２の管理者への連絡を促すメッセージが含まれてもよい。例えば、Ｓ３４において、認証要求に含まれる暗証番号が管理テーブル２３１から読み出されたエントリの暗証番号に合致しなかった場合には、暗証番号の確認を促すメッセージが含まれてもよい。例えば、Ｓ３５において、認証要求に含まれるハッシュ化機体識別番号が管理テーブル２３１から読み出されたエントリに含まれるハッシュ化機体識別番号に合致しなかった場合には、シードの再設定を促すメッセージが含まれてもよい。例えば、再度利用者ＩＤと暗証番号とを入力するように利用者に促すメッセージが含まれていてもよい。その後、処理がＳ２１に戻る。
【０１０１】
（動作例）
図９は、登録処理のシーケンスの例を示す図である。図９では、クライアント端末１のハッシュ化機体識別番号がサーバ２の管理テーブル２３１に登録される例について説明される。
【０１０２】
クライアント端末１の利用者が、サーバ２によって提供されるサービスへの契約を完了すると、サーバ２の管理者は、サーバ２の管理端末から、クライアント端末１の利用者ＩＤ，暗証番号，及びシードをサーバ２に入力する（ＯＰ１）。サーバ２は、管理端末からの入力に従って、記憶部２３の管理テーブル２３１に新たなエントリを作成し、利用者ＩＤ，暗証番号，及びシードを記憶する（ＯＰ２、図８Ａ、Ｓ２２−Ｓ２５）。
【０１０３】
クライアント端末１の利用者が初めてサーバ２によって提供されるサービスを利用する際には、利用者は例えばメニュー画面から登録処理を選択する。クライアント端末１は、例えば、サーバ２から取得した認証情報登録画面Ｇ１（図４）を表示する。利用者は、クライアント端末１に利用者ＩＤ，暗証番号，及びシードを入力する（ＯＰ３、図４、Ｓ１）。
【０１０４】
クライアント端末１は、機体識別番号と入力されたシードとを合わせた値をハッシュ関数によって暗号化し、ハッシュ化機体識別番号を生成する（ＯＰ４、図４、Ｓ２）。クライアント端末１は、入力された利用者ＩＤ，暗証番号，及びシードと、算出したハッシュ化機体識別番号とを含む登録要求をサーバ２に送信する（ＯＰ５、図４、Ｓ３）。
【０１０５】
サーバ２は、クライアント端末１から登録要求を受信すると、登録要求に含まれる利用者ＩＤに対応する管理テーブル２３１のエントリを読み出し、登録要求に含まれる暗証番号及びシードと、読み出されたエントリに含まれる暗証番号及びシードとを比較する（図８Ａ、Ｓ２６−Ｓ２８）。図９では、登録要求に含まれる暗証番号及びシードと、読み出されたエントリに含まれる暗証番号とシードとが合致することを想定する。サーバ２は、登録要求に含まれるハッシュ化機体識別番号を管理テーブル２３１の該当エントリに記憶する（ＯＰ６、図８Ａ、Ｓ２９）。サーバ２は、管理テーブル２３１の該当エントリからシードを削除する（ＯＰ７、図８Ａ、Ｓ３０）。
【０１０６】
サーバ２は、登録要求の応答（登録成功）と、登録成功を示す画面をクライアント端末１に送信する（ＯＰ８、図８Ａ、Ｓ３１）。
【０１０７】
クライアント端末１は、サーバ２から登録要求の応答（登録成功）と登録成功を示す画面とを受信すると、算出したハッシュ化機体識別番号を記憶部１７に記憶する（ＯＰ９、図４、Ｓ５）。クライアント端末１は、出力装置１０４（ディスプレイ）に登録成功を示す画面を出力する（ＯＰ１０、図４、Ｓ６）。これによって、登録処理が終了する。
【０１０８】
図１０は、認証処理のシーケンスの例を示す図である。図１０では、クライアント端末１がサーバ２によって認証される例について説明される。
【０１０９】
クライアント端末１の利用者がサーバ２によって提供されるサービスを利用する際には（初回利用時は登録処理の完了後）、利用者は、例えば、メニュー画面から認証処理を選択する。クライアント端末１は、例えば、サーバ２から取得した認証画面Ｇ２（図５）を表示する。利用者は、クライアント端末１に利用者ＩＤと暗証番号とを入力する（ＯＰ２１、図５、Ｓ１１）。
【０１１０】
クライアント端末１は、入力された利用者ＩＤ及び暗証番号と、記憶部１７に記憶されたハッシュ化機体識別番号とを含む認証要求をサーバ２に送信する（ＯＰ２２、図５、Ｓ１２）。
【０１１１】
サーバ２は、クライアント端末１から認証要求を受信すると、認証要求に含まれる利用者ＩＤに対応する管理テーブル２３１のエントリを読み出し、認証要求に含まれる暗証番号及びハッシュ化機体識別番号と、読み出されたエントリに含まれる暗証番号及びハッシュ化機体識別番号とを比較する（ＯＰ２３、図８Ｂ、Ｓ３３−Ｓ３５）。図１０では、認証要求に含まれる暗証番号及びハッシュ化機体識別番号と、読み出されたエントリに含まれる暗証番号及びハッシュ化機体識別番号とが合致することを想定する。
【０１１２】
サーバ２は、認証要求の応答（認証成功）と、認証成功を示す画面をクライアント端末１に送信する（ＯＰ２４、図８Ｂ、Ｓ３６）。
【０１１３】
クライアント端末１は、サーバ２から認証要求の応答（認証成功）と認証成功を示す画面とを受信すると、出力装置１０４（ディスプレイ）に認証成功を示す画面を出力する（ＯＰ２５、図５、Ｓ１４）。これによって、認証処理が終了し、クライアント端末１の利用者はサーバ２によって提供されるサービスを利用することが可能になる。
【０１１４】
（第１実施形態の作用効果）
第１実施形態では、機体識別番号とシードと合わせた値をハッシュ関数で暗号化したハッシュ化機体識別番号を用いて認証が行われる。これによって、ネットワークにクライアント端末１の機体識別番号が流れることを防ぐことができ、他のサービスに機体識別番号が悪用されることを防ぐことができる。また、ハッシュ化された情報は類推が難しいため、所定の番号の範囲を狙ったなりすまし攻撃を防ぐことができる。
【０１１５】
また、万一、ハッシュ化機体識別番号が流出した場合でも、サーバ２によって提供されるサービス以外には、ハッシュ化機体識別番号は意味をなさないので、被害をサーバ２によって提供されるサービスにのみ抑えることができる。機体識別番号のみをハッシュ関数で暗号化するのではなく、機体識別番号とシードとを合わせた値をハッシュ関数で暗号化することによって、例えば、サーバ２によって用いられるハッシュ関数と同じハッシュ関数を採用する他のサービスがあり、且つハッシュ化機体識別番号が流出したとしても、該他のサービスはシードを知らないため、該ハッシュ化機体識別番号は意味をなさず、被害をサーバ２によって提供されるサービスのみに抑えることができる。
【０１１６】
また、ＳＩＭロックの解除によって、例えば、クライアント端末１の設定がリセットされた後に再利用されて別の利用者の手に渡った場合でも、シードはクライアント端末１に記憶されていないため、シードは該別の利用者に流出しない。機体識別番号のみでは、該別の利用者は、サーバ２によって提供されるサービスを利用することはできないため、安全性が高い。
【０１１７】
また、シードが変更されると、図９において示される登録処理が行われて、ハッシュ化機体識別番号も変更される。定期的にシードが設定され直されることによって、シードの変更に応じてハッシュ化機体識別番号も変更されるため、より強固なセキュリティを保つことができる。また、利用者がシードを忘れてしまった場合でも、サーバ２の管理者に連絡し、新たなシードを設定して再度登録処理を行えばよいため、紛失しても安全である。
【０１１８】
また、登録処理においては、サーバ２が、暗号番号とシードとを用いてクライアント端末１を認証し、ハッシュ化機体識別番号の登録後にシードを削除する。これによって、何らかの方法で万一シードが第３者によって不正に取得された場合でも、登録処理終了後はサーバ２にシードは残っていないため、悪意のある第３者が該シードを含む登録要求を送信してきた場合でも、第３者が登録されることはなく、悪用を防ぐことができる。
【０１１９】
＜変形例＞
第１実施形態において、ハッシュ化機体識別番号は登録処理において生成され記憶されたものが認証処理でも用いられた。これに代えて、ハッシュ化機体識別番号をクライアント端末１に記憶させずに、認証処理の度に（サーバ２によって提供されるサービスにログインする度に）、利用者は利用者ＩＤと暗証番号とに加えてシードも入力し、クライアント端末１はハッシュ化機体識別番号を算出するようにしてもよい。これによって、クライアント端末１が盗まれる等して第３者の手に渡った場合でも、シードが流出していなければ、該第３者がサーバ２によって提供されるサービスを利用することを防ぐことができ、セキュリティが高まる。
【符号の説明】
【０１２０】
１      クライアント端末
２      サーバ
１１      アクセス要求部
１２      ユーザ入力受信部
１３      算出部
１４      登録要求部
１５      認証要求部
１６      画面出力部
１７      記憶部
２１      入力受付部
２２      画面送信部
２３      記憶部
２４      登録部
２５      認証部
２３１      管理テーブル
【図１】
0005584102.tif 000002
【図２】
0005584102.tif 000003
【図３】
0005584102.tif 000004
【図４】
0005584102.tif 000005
【図５】
0005584102.tif 000006
【図６】
0005584102.tif 000007
【図７】
0005584102.tif 000008
【図８Ａ】
0005584102.tif 000009
【図８Ｂ】
0005584102.tif 000010
【図９】
0005584102.tif 000011
【図１０】
0005584102.tif 000012
【図１１】
0005584102.tif 000013
【図１２】
0005584102.tif 000014
【図１３】
0005584102.tif 000015