"端末装置と、認証サーバとを備えた認証システムにおいて、前記端末装置は、前記端末装置を識別する装置識別情報を第1の共通鍵で暗号化した暗号化情報を生成する第1の暗号化部と、認証処理に使用する認証情報と、前記装置識別情報とを含む第1の認証要求を前記認証サーバへ送信し、前記第1の認証要求の応答として、前記認証情報と前記装置識別情報とを第2の共通鍵で暗号化した認証トークンを前記認証サーバから受信し、前記認証トークンと前記暗号化情報とを含む第2の認証要求を前記認証サーバへ送信する第1の通信部と、を有し、前記認証サーバは、予め登録された前記認証情報を記憶する記憶部と、前記第1の認証要求に含まれる前記認証情報と前記装置識別情報とを前記第2の共通鍵で暗号化することにより前記認証トークンを生成する第2の暗号化部と、前記第1の認証要求を前記端末装置から受信し、前記第1の認証要求に基づく前記認証トークンを前記端末装置へ送信し、前記第2の認証要求を前記端末装置から受信する第2の通信部と、前記第2の認証要求に含まれる前記認証トークンを前記第2の共通鍵で復号して前記認証情報および前記装置識別情報を取得し、前記第2の認証要求に含まれる前記暗号化情報を前記第1の共通鍵で復号して前記装置識別情報を取得する復号部と、前記認証トークンを復号することにより取得された前記装置識別情報と、前記暗号化情報を復号することにより取得された前記装置識別情報とを比較し、前記認証トークンを復号することにより取得された前記認証情報と、前記記憶部に記憶されている前記認証情報とを比較することにより認証処理を行う認証部と、を有することを特徴とする認証システム。前記第1の暗号化部は、前記装置識別情報に時刻情報を付加して前記第1の共通鍵で暗号化した前記暗号化情報を生成し、前記第1の通信部は、前記認証トークンと前記暗号化情報と前記時刻情報とを含む前記第2の認証要求を前記認証サーバへ送信し、前記復号部は、前記暗号化情報を前記第1の共通鍵で復号して前記装置識別情報および前記時刻情報を取得し、前記認証部はさらに、前記暗号化情報を復号することにより取得された前記時刻情報と、前記第2の認証要求に含まれる前記時刻情報とを比較することにより前記認証処理を行うことを特徴とする請求項1に記載の認証システム。前記端末装置はさらに、少なくとも前記認証サーバから前記認証トークンが受信されてから前記第2の認証要求が前記認証サーバへ送信されるまで前記認証トークンを保持する不揮発性メモリを有することを特徴とする請求項1または請求項2に記載の認証システム。端末装置を識別する装置識別情報を第1の共通鍵で暗号化した暗号化情報を生成する暗号化部と、認証処理に使用する認証情報と、前記装置識別情報とを含む第1の認証要求を認証サーバへ送信し、前記第1の認証要求の応答として、前記認証情報と前記装置識別情報とを第2の共通鍵で暗号化した認証トークンを前記認証サーバから受信し、前記認証トークンと前記暗号化情報とを含む第2の認証要求を前記認証サーバへ送信する通信部と、を備えたことを特徴とする端末装置。予め登録された認証情報を記憶する記憶部と、端末装置から受信される、前記認証情報と、前記端末装置を識別する装置識別情報とを含む第1の認証要求に含まれる前記認証情報と前記装置識別情報とを第2の共通鍵で暗号化することにより認証トークンを生成する暗号化部と、前記第1の認証要求を前記端末装置から受信し、前記第1の認証要求に基づく前記認証トークンを前記端末装置へ送信し、前記認証トークンと、前記装置識別情報を第1の共通鍵で暗号化した暗号化情報とを含む第2の認証要求を前記端末装置から受信する第2の通信部と、前記第2の認証要求に含まれる前記認証トークンを前記第2の共通鍵で復号して前記認証情報および前記装置識別情報を取得し、前記第2の認証要求に含まれる前記暗号化情報を前記第1の共通鍵で復号して前記装置識別情報を取得する復号部と、前記認証トークンを復号することにより取得された前記装置識別情報と、前記暗号化情報を復号することにより取得された前記装置識別情報とを比較し、前記認証トークンを復号することにより取得された前記認証情報と、前記記憶部に記憶されている前記認証情報とを比較することにより認証処理を行う認証部と、を備えたことを特徴とする認証サーバ。請求項4に記載の端末装置としてコンピュータを機能させるためのプログラム。前記暗号化部としてコンピュータを機能させるためのネイティブコードを含むことを特徴とする請求項6に記載のプログラム。請求項5に記載の認証サーバとしてコンピュータを機能させるためのプログラム。しかし、スマートフォンやPCPersonalComputer等の端末装置上では、認証情報が不揮発性メモリに保持されている場合、ウイルス等によって認証情報が盗み取られる可能性がある。認証情報が盗み取られると、悪意のユーザが認証情報を利用して正規のユーザとして振る舞う、いわゆるなり済ましによる攻撃のリスクが発生する。また、認証情報が揮発性メモリに保持されている場合、認証情報が不揮発性メモリに保持される場合よりも認証情報が記憶されている時間が相対的に短いため、認証情報が盗み取られるリスクは減少するが、ソフトウェアあるいはOSOperatingSystemが再起動された際に認証トークンが揮発性メモリから失われ、ユーザが再度認証情報を入力する必要がある。上記の問題を解決するため、端末装置に安全なセキュアモジュールを用意し、そのセキュアモジュールに認証情報を安全に保管する方法がある。しかし、セキュアモジュールを使用する場合、汎用的なハードウェアで構成されるスマートフォンやPC等の端末装置にセキュアモジュールを設けることが、コスト等の観点から困難な場合がある。本発明は、上述した課題に鑑みてなされたものであって、認証情報を保管するためのハードウェアを端末装置に追加することなく、なり済ましによる攻撃の発生を低減することができる認証システム、端末装置、認証サーバ、およびプログラムを提供することを目的とする。本発明は、上記の課題を解決するためになされたもので、端末装置と、認証サーバとを備えた認証システムにおいて、前記端末装置は、前記端末装置を識別する装置識別情報を第1の共通鍵で暗号化した暗号化情報を生成する第1の暗号化部と、認証処理に使用する認証情報と、前記装置識別情報とを含む第1の認証要求を前記認証サーバへ送信し、前記第1の認証要求の応答として、前記認証情報と前記装置識別情報とを第2の共通鍵で暗号化した認証トークンを前記認証サーバから受信し、前記認証トークンと前記暗号化情報とを含む第2の認証要求を前記認証サーバへ送信する第1の通信部と、を有し、前記認証サーバは、予め登録された前記認証情報を記憶する記憶部と、前記第1の認証要求に含まれる前記認証情報と前記装置識別情報とを前記第2の共通鍵で暗号化することにより前記認証トークンを生成する第2の暗号化部と、前記第1の認証要求を前記端末装置から受信し、前記第1の認証要求に基づく前記認証トークンを前記端末装置へ送信し、前記第2の認証要求を前記端末装置から受信する第2の通信部と、前記第2の認証要求に含まれる前記認証トークンを前記第2の共通鍵で復号して前記認証情報および前記装置識別情報を取得し、前記第2の認証要求に含まれる前記暗号化情報を前記第1の共通鍵で復号して前記装置識別情報を取得する復号部と、前記認証トークンを復号することにより取得された前記装置識別情報と、前記暗号化情報を復号することにより取得された前記装置識別情報とを比較し、前記認証トークンを復号することにより取得された前記認証情報と、前記記憶部に記憶されている前記認証情報とを比較することにより認証処理を行う認証部と、を有することを特徴とする認証システムである。また、本発明の認証システムにおいて、前記第1の暗号化部は、前記装置識別情報に時刻情報を付加して前記第1の共通鍵で暗号化した前記暗号化情報を生成し、前記第1の通信部は、前記認証トークンと前記暗号化情報と前記時刻情報とを含む前記第2の認証要求を前記認証サーバへ送信し、前記復号部は、前記暗号化情報を前記第1の共通鍵で復号して前記装置識別情報および前記時刻情報を取得し、前記認証部はさらに、前記暗号化情報を復号することにより取得された前記時刻情報と、前記第2の認証要求に含まれる前記時刻情報とを比較することにより前記認証処理を行うことを特徴とする。また、本発明の認証システムにおいて、前記端末装置はさらに、少なくとも前記認証サーバから前記認証トークンが受信されてから前記第2の認証要求が前記認証サーバへ送信されるまで前記認証トークンを保持する不揮発性メモリを有することを特徴とする。また、本発明は、端末装置を識別する装置識別情報を第1の共通鍵で暗号化した暗号化情報を生成する暗号化部と、認証処理に使用する認証情報と、前記装置識別情報とを含む第1の認証要求を認証サーバへ送信し、前記第1の認証要求の応答として、前記認証情報と前記装置識別情報とを第2の共通鍵で暗号化した認証トークンを前記認証サーバから受信し、前記認証トークンと前記暗号化情報とを含む第2の認証要求を前記認証サーバへ送信する通信部と、を備えたことを特徴とする端末装置である。また、本発明は、予め登録された認証情報を記憶する記憶部と、端末装置から受信される、前記認証情報と、前記端末装置を識別する装置識別情報とを含む第1の認証要求に含まれる前記認証情報と前記装置識別情報とを第2の共通鍵で暗号化することにより認証トークンを生成する暗号化部と、前記第1の認証要求を前記端末装置から受信し、前記第1の認証要求に基づく前記認証トークンを前記端末装置へ送信し、前記認証トークンと、前記装置識別情報を第1の共通鍵で暗号化した暗号化情報とを含む第2の認証要求を前記端末装置から受信する第2の通信部と、前記第2の認証要求に含まれる前記認証トークンを前記第2の共通鍵で復号して前記認証情報および前記装置識別情報を取得し、前記第2の認証要求に含まれる前記暗号化情報を前記第1の共通鍵で復号して前記装置識別情報を取得する復号部と、前記認証トークンを復号することにより取得された前記装置識別情報と、前記暗号化情報を復号することにより取得された前記装置識別情報とを比較し、前記認証トークンを復号することにより取得された前記認証情報と、前記記憶部に記憶されている前記認証情報とを比較することにより認証処理を行う認証部と、を備えたことを特徴とする認証サーバである。また、本発明は、上記の端末装置としてコンピュータを機能させるためのプログラムである。また、本発明のプログラムは、暗号化部としてコンピュータを機能させるためのネイティブコードを含むことを特徴とする。また、本発明は、上記の認証サーバとしてコンピュータを機能させるためのプログラムである。本発明によれば、認証トークンを復号することにより取得された装置識別情報と、暗号化情報を復号することにより取得された装置識別情報とを比較する処理が認証処理に加わる。仮に、端末装置で保持されている認証トークンが抜き取られた場合でも、装置識別情報を生成できない限り、なり済ましが不可能であるため、認証情報を保管するためのハードウェアを端末装置に追加することなく、なり済ましによる攻撃の発生を低減することができる。以下、図面を参照し、本発明の実施形態を説明する。図1は、本発明の一実施形態による認証システムの構成を示している。認証を受ける端末装置であるクライアント1と、認証を行う認証サーバであるサーバ2とで認証システムが構成されている。クライアント1は複数台存在していてもよい。図2はクライアント1の構成を示している。クライアント1は、CPUCentralProcessingUnit10、通信部11、表示部12、操作部13、メモリ14、および記憶部15を有する。CPU10は、記憶部15に格納されている各種のプログラムを読み出してメモリ14に読み込み、プログラムの各種命令に従って各種の演算を行い、クライアント1内の各部を制御する。通信部11は、外部の他の通信装置本実施形態ではサーバ2と通信を行う。表示部12は各種の情報を表示する。操作部13は、ユーザが操作する各種操作部材を有する。メモリ14は、記憶部15から読み込まれたプログラムや、CPU10が演算を行った結果等を一時的に記憶する揮発性メモリで構成されている。記憶部15は、CPU10の動作を規定する各種のプログラムや、クライアント1内で処理される各種データを記憶する不揮発性メモリで構成されている。本実施形態のクライアント1は、一例として、Android登録商標をOSに採用しているものとする。認証処理部16および暗号化部17は、CPU10に各種処理を実行させるためのプログラムである。図2では、認証処理部16および暗号化部17のプログラムが記憶部15からメモリ14に読み込まれて、メモリ14上で認証処理部16および暗号化部17が起動している状態が示されている。メモリ14上で起動したこれらのプログラムは、CPU10およびメモリ14の資源を利用して各種処理を行う。認証処理部16は、サーバ2から認証を受ける際に必要な処理を行う。暗号化部17は、クライアント1の個体を識別するデバイスID装置識別情報を共通鍵以下、共通鍵Aとするで暗号化し、デバイス暗号情報暗号化情報を生成する処理を行う。デバイスIDは装置毎に固有な識別情報であるIMSIInternationalMobileSubscriberIdentity、IMEIInternationalMobileEquipmentIdentity、OSID、MACMediaAccessControladdressアドレスのいずれか、またはそれらの組合せである。IMEIは、装置の製造元や、機種、シリアル番号等の情報を含む情報であり、例えば携帯端末が標準で備えている汎用のフラッシュメモリに記録されている。IMSIは、契約者毎にユニークな識別子であり、例えば携帯端末の使用に必要な汎用のUIMUserIdentityModuleCardカードに記録されている。OSIDは、装置においてOSが最初に起動するときにランダムに生成される64ビットの情報であり、例えば携帯端末が標準で備えている汎用のフラッシュメモリに記録されている。暗号化部17が使用する共通鍵Aは暗号化部17のプログラムに格納されている。MACアドレスは、例えば通信部11が保持している。暗号化部17のプログラムは、逆コンパイルが困難なネイティブコード機械語で構成されている。Android登録商標等のOSでは、ネイティブコードのインタフェースであるJNIJava登録商標NativeInterfaceを使用してネイティブコードを呼び出せる仕組みが設けられている。暗号化部17の処理が逆コンパイルにより解読されないようにするため、暗号化部17のプログラムをネイティブコードで構成するだけでなく、暗号化部17のプログラムに難読化を施すことがより望ましい。暗号化部17をクライアント1のハードウェアに依存しないように構成することによって、汎用的なハードウェアを使用した端末装置において高い互換性を実現することができる。図3はサーバ2の構成を示している。サーバ2は、CPU20、通信部21、メモリ22、および記憶部23を有する。CPU20は、記憶部23に格納されている各種のプログラムを読み出してメモリ22に読み込み、プログラムの各種命令に従って各種の演算を行い、サーバ2内の各部を制御する。通信部21は、外部の他の通信装置本実施形態ではクライアント1と通信を行う。メモリ22は、記憶部23から読み込まれたプログラムや、CPU20が演算を行った結果等を一時的に記憶する揮発性メモリで構成されている。記憶部23は、CPU20の動作を規定する各種のプログラムや、サーバ2内で処理される各種データを記憶する不揮発性メモリで構成されている。認証処理部24、暗号化部25、および復号部26は、CPU20に各種処理を実行させるためのプログラムである。図3では、認証処理部24、暗号化部25、および復号部26のプログラムが記憶部23からメモリ22に読み込まれて、メモリ22上で認証処理部24、暗号化部25、および復号部26が起動している状態が示されている。メモリ22上で起動したこれらのプログラムは、CPU20およびメモリ22の資源を利用して各種処理を行う。認証処理部24は、クライアント1の認証処理を行う。暗号化部25は、クライアント1から取得した情報を共通鍵以下、共通鍵Bとするで暗号化し、認証トークンを生成する処理を行う。復号部26は、クライアント1から取得した認証トークンを共通鍵Bで復号し、クライアント1から取得したデバイス暗号情報を共通鍵Aで復号する処理を行う。暗号化部25が使用する共通鍵Aおよび共通鍵Bは暗号化部25のプログラムに格納されている。暗号化部25が使用する共通鍵Aは、クライアント1の暗号化部17が使用する共通鍵Aと同一である。次に、図4および図5を参照し、認証時のクライアント1とサーバ2の動作を説明する。クライアント1は、サーバ2とデータ通信を行う際、サーバ2に対して認証を要求し、サーバ2は、クライアント1からの要求に応じて認証を行う。図4は、クライアント1が認証トークンを保持していない状態における初回の認証に係る処理を示している。以下の説明において、クライアント1あるいはサーバ2が処理に使用するデータは適宜メモリ14あるいはメモリ22に格納され、不要になった時点で、適宜メモリ14あるいはメモリ22から消去されるが、以下ではメモリ14あるいはメモリ22からのデータの消去については説明を省略する。各情報がメモリ14あるいはメモリ22に格納されている時間は十分短いので、処理のためにメモリ14に格納されたデバイスID等が読み取られるリスクは小さい。以下の説明において、クライアント1とサーバ2の間の通信は、SSLSecureSocketLayer等の暗号化通信により行われるものとする。また、サーバ2の記憶部23には、クライアント1のユーザに対して発行されたIDおよびパスワードが格納されているものとする。まず、クライアント1において、ユーザによって操作部13が操作され、IDが入力される。認証処理部16は、入力されたIDを取得し、メモリ14に格納するステップS100。同様に、ユーザによって操作部13が操作され、パスワードが入力される。認証処理部16は、入力されたパスワードを取得し、メモリ14に格納するステップS105。ステップS100,S105の処理によって、認証に必要な認証情報であるIDおよびパスワードが取得される。続いて、認証処理部16は記憶部15等からデバイスIDを取得し、メモリ14に格納するステップS110。認証処理部16は、メモリ14に格納されたID、パスワード、およびデバイスIDを含む認証要求第1の認証要求を生成し、通信部11へ出力するステップS115。通信部11は認証要求をサーバ2へ送信するステップS120。サーバ2の通信部21は認証要求を受信する。受信された認証要求はメモリ14に格納される。認証処理部24は、認証要求に含まれるIDとパスワードの組合せと、記憶部23に格納されているIDとパスワードの組合せとが一致するか否か、照合を行うステップS125。両者の組合せが一致しなかった場合、認証に失敗したことを示す情報を含むメッセージがクライアント1に返信され、認証が終了する。また、両者の組合せが一致した場合、暗号化部25は、認証要求に含まれるID、パスワード、およびデバイスIDを共通鍵Bで暗号化して認証トークンを生成し、通信部21へ出力するステップS130。通信部21は、認証要求の送信元であるクライアント1へ認証トークンを送信するステップS135。クライアント1の通信部11は認証トークンを受信する。受信された認証トークンはメモリ14に格納される。認証処理部16は、メモリ14に格納された認証トークンを記憶部15に格納し、保存するステップS140。続いて、認証処理部16は、処理の完了をサーバ2に通知するための処理完了通知を生成し、通信部11へ出力する。通信部11は処理完了通知をサーバ2へ送信するステップS145。処理完了通知の送信後、クライアント1は、初回の認証に係る処理を終了する。認証トークンを受信したことにより、クライアント1はサーバ2とのデータ通信が許可され、データ通信を行う。サーバ2の通信部21は処理完了通知を受信する。処理完了通知の受信後、サーバ2は、初回の認証に係る処理を終了する。図5は、初回の認証に係る処理が終了し、クライアント1が認証トークンを保持している状態における2回目以降の認証に係る処理を示している。まず、クライアント1の認証処理部16は記憶部15から認証トークンを読み出し、メモリ14に格納するステップS200。認証処理部16は記憶部15等からデバイスIDを取得し、メモリ14に格納するステップS205。暗号化部17は、メモリ14に格納されたデバイスIDを共通鍵Aで暗号化してデバイス暗号情報を生成し、メモリ14に格納するステップS210。続いて、認証処理部16は、メモリ14に格納された認証トークンおよびデバイス暗号情報を含む認証要求第2の認証要求を生成し、通信部11へ出力するステップS215。通信部11は認証要求をサーバ2へ送信するステップS220。サーバ2の通信部21は認証要求を受信する。受信された認証要求はメモリ14に格納される。復号部26は、メモリ14に格納された認証要求から認証トークンおよびデバイス暗号情報を抽出し、メモリ14に格納する。続いて、復号部26は、メモリ14に格納された認証トークンを共通鍵Bで復号し、復号により得られたID、パスワード、およびデバイスIDをメモリ14に格納するステップS225。また、復号部26は、メモリ14に格納されたデバイス暗号情報を共通鍵Aで復号し、復号により得られたデバイスIDをメモリ14に格納するステップS230。続いて、認証処理部24は、認証トークンの復号により得られたデバイスIDと、デバイス暗号情報の復号により得られたデバイスIDとをメモリ14から読み出し、両者を比較するステップS235。両者が一致しなかった場合、認証に失敗したことを示す情報を含むメッセージがクライアント1に返信され、認証が終了する。また、両者が一致した場合、認証処理部24は、認証トークンの復号により得られたIDとパスワードの組合せと、記憶部23に格納されているIDとパスワードの組合せとが一致するか否か、照合を行うステップS240。両者の組合せが一致しなかった場合、認証に失敗したことを示す情報を含むメッセージがクライアント1に返信され、認証が終了する。また、両者の組合せが一致した場合、認証処理部24は、クライアント1にデータ通信の許可を通知するための許可通知を生成し、通信部21へ出力する。通信部21は許可通知をクライアント1へ送信する。許可通知の送信後、サーバ2は、2回目以降の認証に係る処理を終了する。クライアント1の通信部11は許可通知を受信する。許可通知を受信したことにより、クライアント1はサーバ2とのデータ通信が許可され、データ通信を行う。次に、本実施形態の変形例を説明する。より安全性を高めるため、以下のようにしてもよい。クライアント1の暗号化部17は、ステップS210でデバイス暗号情報を生成する際に、デバイスIDに時刻情報を付加して暗号化を行う。また、認証処理部16は、ステップS215で認証要求を生成する際に、認証トークンおよびデバイス暗号情報だけでなく、上記の時刻情報を含む認証要求を生成する。認証トークンを含む認証要求が受信された場合、サーバ2の認証処理部24は、認証要求から認証トークン、デバイス暗号情報、および時刻情報を抽出し、メモリ14に格納する。また、復号部26は、図5のステップS230でデバイス暗号情報を復号してデバイスIDおよび時刻情報を取得し、メモリ14に格納する。その後、認証処理部24は、時刻情報を用いて認証トークンの有効性を検証する。図6は、認証トークンの有効性検証に係る認証処理部24に動作を示している。認証処理部24は、認証要求から抽出した時刻情報と、デバイス暗号情報の復号により得られた時刻情報とをメモリ14から読み出して比較するステップS300。両者が一致する場合ステップS305、認証処理部24は認証トークンが有効であると判断するステップS310。また、両者が異なる場合、認証処理部24は認証トークンが無効であると判断するステップS315。認証トークンが無効であると判断された場合、認証に失敗したことを示す情報を含むメッセージがクライアント1に返信され、認証が終了する。また、認証トークンが有効であると判断された場合、前述した動作と同様にして、図5のステップS235,S240の確認の結果に応じてクライアント1の認証が行われる。本実施形態のクライアント1およびサーバ2に関しては、クライアント1やサーバ2の動作および機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませ、実行させることにより、クライアント1およびサーバ2を構成することが可能である。ここで、コンピュータは、WWWシステムを利用している場合であれば、ホームページ提供環境あるいは表示環境も含むものとする。また、コンピュータ読み取り可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータに内蔵されるハードディスク等の記憶装置のことをいう。さらにコンピュータ読み取り可能な記録媒体とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリRAMのように、一定時間プログラムを保持しているものも含むものとする。また、上述したプログラムは、このプログラムを記憶装置等に格納したコンピュータから、伝送媒体を介して、あるいは伝送媒体中の伝送波により他のコンピュータに伝送されてもよい。ここで、プログラムを伝送する伝送媒体は、インターネット等のネットワーク通信網や電話回線等の通信回線通信線のように、情報を伝送する機能を有する媒体のことをいう。また、上述したプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能を、コンピュータに既に記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル差分プログラムであってもよい。上述したように、本実施形態によれば、サーバ2は、従来のIDとパスワードによる認証処理に加えて、認証トークンを復号することにより得られたデバイスIDと、デバイス暗号情報を復号することにより得られたデバイスIDとを比較する処理を行う。仮に、クライアント1で保持されている認証トークンが悪意のユーザによって抜き取られた場合でも、デバイスIDは装置毎に固有な情報であり、かつ認証トークンにおいてデバイスIDはデバイス暗号情報として暗号化されているため、デバイスIDを生成することは困難である。本実施形態ではデバイスIDを生成できない限り、なり済ましが不可能であるため、認証情報を保管するためのハードウェアをクライアント1に追加することなく、なり済ましによる攻撃の発生を低減することができる。また、時刻情報を用いて認証トークンの有効性を検証することによって、なり済ましによる攻撃の発生をより低減することができる。また、クライアント1において、認証トークンを不揮発性メモリに保持しておくことが可能であるため、認証情報を保管するための専用のハードウェアが不要であり、クライアント1のコストアップを避けることができる。以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成は上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。"