(57)【特許請求の範囲】
【請求項１】
所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムであって、
前記機器認証サーバは、
前記端末機器から機器認証の要求を受ける要求受け付け手段と、
前記要求を受け付けた端末機器に対して、自己が発生したサーバ固有情報を前記端末機器に送信するサーバ固有情報送信手段と、
前記端末機器から、前記サーバ固有情報を前記秘密情報で暗号化した暗号化サーバ固有情報を受信する暗号化サーバ固有情報受信手段と、
前記受信した暗号化サーバ固有情報を前記秘密鍵で復号できたことにより前記端末機器を機器認証する機器認証手段と、
前記端末機器から、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記端末機器に送信することにより第１のセッション鍵を取得して前記端末機器と共有する第１のセッション鍵取得手段と、
前記端末機器が前記機器認証手段で機器認証されたことを証明する証明情報に有効期限を設定する期限設定手段と、
有効期限が設定された前記証明情報を、前記取得した第１のセッション鍵で暗号化して前記端末機器に送信する第１の証明情報送信手段と、
前記端末機器より前記証明情報を取得した前記サービスサーバから、前記証明情報を受信する第１の証明情報受信手段と、
前記端末機器から、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記端末機器に送信することにより前記第２のセッション鍵を取得して前記端末機器と共有する第２のセッション鍵取得手段と、
前記取得した第２のセッション鍵を用いて前記証明情報を所定の手順で変換することにより、前記証明情報が通信途中で改変されていないことを検出するための検出情報を生成する第１の検出情報生成手段と
を具備し、
前記第１の証明情報送信手段は、前記証明情報と共に、前記第１の検出情報生成手段で生成した検出情報を前記端末機器に送信し、
前記端末機器は、
前記機器認証サーバに対し、機器認証を要求する要求手段と、
前記要求に応じて前記機器認証サーバが送信してきたサーバ固有情報を前記秘密情報で暗号化して前記機器認証サーバに送信する暗号化サーバ固有情報送信手段と、
前記機器認証サーバから、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記機器認証サーバに送信することにより第１のセッション鍵を取得して前記機器認証サーバと共有する第３のセッション鍵取得手段と、
前記機器認証サーバから、前記第１のセッション鍵で暗号化され、前記機器認証サーバで機器認証されたことを証明する証明情報であって、有効期限が設定された前記証明情報を受信する第２の証明情報受信手段と、
有効期限が設定された前記証明情報を前記第１のセッション鍵で復号した後、前記サービスサーバに送信する第２の証明情報送信手段と、
前記機器認証サーバから、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記機器認証サーバに送信することにより前記第２のセッション鍵を取得して前記機器認証サーバと共有する第４のセッション鍵取得手段と、
第２のセッション鍵により前記証明情報を所定の手順で変換した情報であって、前記証明情報が通信途中で改変されていないことを検出するための検出情報を前記機器認証サーバから受信する検出情報受信手段と、
前記取得した第２のセッション鍵を用いて前記受信した証明情報を前記所定の手順で変換することにより検出情報を生成する第２の検出情報生成手段と、
前記生成した検出情報と、前記受信した検出情報との同一性を判定することにより、前記受信した証明情報が改変されていないことを確認する確認手段と
を具備する
機器認証システム。
【請求項２】
所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用する機器認証サーバであって、
前記端末機器から機器認証の要求を受ける要求受け付け手段と、
前記要求を受け付けた端末機器に対して、自己が発生したサーバ固有情報を前記端末機器に送信するサーバ固有情報送信手段と、
前記端末機器から、前記サーバ固有情報を前記秘密情報で暗号化した暗号化サーバ固有情報を受信する暗号化サーバ固有情報受信手段と、
前記受信した暗号化サーバ固有情報を前記秘密鍵で復号できたことにより前記端末機器を機器認証する機器認証手段と、
前記端末機器から、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記端末機器に送信することにより第１のセッション鍵を取得して前記端末機器と共有する第１のセッション鍵取得手段と、
前記端末機器が前記機器認証手段で機器認証されたことを証明する証明情報に有効期限を設定する期限設定手段と、
有効期限が設定された前記証明情報を、前記取得した第１のセッション鍵で暗号化して前記端末機器に送信する証明情報送信手段と、
前記端末機器より前記証明情報を取得した前記サービスサーバから、前記証明情報を受信する証明情報受信手段と、
前記端末機器から、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記端末機器に送信することにより前記第２のセッション鍵を取得して前記端末機器と共有する第２のセッション鍵取得手段と、
前記取得した第２のセッション鍵を用いて前記証明情報を所定の手順で変換することにより、前記証明情報が通信途中で改変されていないことを検出するための検出情報を生成する検出情報生成手段と
を具備し、
前記証明情報送信手段は、前記証明情報と共に、前記検出情報生成手段で生成した検出情報を前記端末機器に送信する
機器認証サーバ。
【請求項３】
前記サービスサーバから送信される前記証明情報が正しいことを確認し、確認した確認結果を前記サービスサーバに送信する確認結果送信手段
を具備する請求項２に記載の機器認証サーバ。
【請求項４】
前記端末機器が生成し、前記秘密情報で暗号化した端末固有情報を、前記端末機器から受信する端末固有情報受信手段と、
前記受信した端末固有情報を前記秘密情報で復号することにより取得し、前記取得した端末固有情報を前記端末機器に送信する端末固有情報送信手段と
を具備する請求項２に記載の機器認証サーバ。
【請求項５】
前記証明情報は、前記端末機器の機器認証結果を特定する特定情報と、前記特定情報を固有のサーバ鍵で暗号化した暗号化特定情報とから構成され、
前記サービスサーバから受信した証明情報に含まれる暗号化特定情報を前記サーバ鍵で復号する暗号化特定情報復号手段と、
前記復号した特定情報と、前記受信した証明情報に含まれる特定情報が同一であることを判定する判定手段と、
前記判定した特定情報を用いて機器認証結果を特定する機器認証結果特定手段と
を具備し、
前記確認結果送信手段は、前記機器認証結果特定手段で特定した機器認証結果を送信する
請求項３に記載の機器認証サーバ。
【請求項６】
前記端末機器の機器ＩＤと、当該端末機器が記憶している秘密情報と、を対応付けて記憶した対応記憶手段と、
前記要求を受け付けた端末機器から機器ＩＤを受信する機器ＩＤ受信手段と、
前記受信した機器ＩＤを前記対応記憶手段で検索し、前記機器ＩＤに対応付けられた秘密情報を特定する秘密情報特定手段と
を具備し、
前記機器認証手段は、前記特定した秘密情報で前記サーバ固有情報を暗号化する
請求項２に記載の機器認証サーバ。
【請求項７】
所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用する端末機器であって、
前記機器認証サーバに対し、機器認証を要求する要求手段と、
前記要求に応じて前記機器認証サーバが送信してきたサーバ固有情報を前記秘密情報で暗号化して前記機器認証サーバに送信する暗号化サーバ固有情報送信手段と、
前記機器認証サーバから、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記機器認証サーバに送信することにより第１のセッション鍵を取得して前記機器認証サーバと共有する第１のセッション鍵取得手段と、
前記機器認証サーバから、前記第１のセッション鍵で暗号化され、前記機器認証サーバで機器認証されたことを証明する証明情報であって、有効期限が設定された前記証明情報を受信する証明情報受信手段と、
有効期限が設定された前記証明情報を前記第１のセッション鍵で復号した後、前記サービスサーバに送信する証明情報送信手段と、
前記機器認証サーバから、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記機器認証サーバに送信することにより前記第２のセッション鍵を取得して前記機器認証サーバと共有する第２のセッション鍵取得手段と、
第２のセッション鍵により前記証明情報を所定の手順で変換した情報であって、前記証明情報が通信途中で改変されていないことを検出するための検出情報を前記機器認証サーバから受信する検出情報受信手段と、
前記取得した第２のセッション鍵を用いて前記受信した証明情報を前記所定の手順で変換することにより検出情報を生成する検出情報生成手段と、
前記生成した検出情報と、前記受信した検出情報との同一性を判定することにより、前記受信した証明情報が改変されていないことを確認する確認手段と
を具備する端末機器。
【請求項８】
端末固有情報を生成し、前記秘密情報で暗号化した後、前記機器認証サーバに送信する端末固有情報送信手段と、
前記送信した端末固有情報が、前記機器認証サーバで復号されたことを確認することにより、前記機器認証サーバを認証するサーバ認証手段と
を具備する請求項７に記載の端末機器。
【請求項９】
所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用する機器認証サーバで用いる機器認証方法であって、
前記機器認証サーバは、要求受け付け手段と、サーバ固有情報送信手段と、暗号化サーバ固有情報受信手段と、機器認証手段と、第１のセッション鍵取得手段と、期限設定手段と、証明情報送信手段と、証明情報受信手段と、第２のセッション鍵取得手段と、検出情報生成手段と
を具備し、
前記要求受け付け手段によって、前記端末機器から機器認証の要求を受ける要求受け付けステップと、
前記サーバ固有情報送信手段によって、前記要求を受け付けた端末機器に対して、自己が発生したサーバ固有情報を前記端末機器に送信するサーバ固有情報送信ステップと、
前記暗号化サーバ固有情報受信手段によって、前記端末機器から、前記サーバ固有情報を前記秘密情報で暗号化した暗号化サーバ固有情報を受信する暗号化サーバ固有情報受信ステップと、
前記機器認証手段によって、前記受信した暗号化サーバ固有情報を前記秘密鍵で復号できたことにより前記端末機器を機器認証する機器認証ステップと、
前記第１のセッション鍵取得手段によって、前記端末機器から、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記端末機器に送信することにより第１のセッション鍵を取得して前記端末機器と共有する第１のセッション鍵取得ステップと、
前記期限設定手段によって、前記端末機器が前記機器認証手段で機器認証されたことを証明する証明情報に有効期限を設定する期限設定ステップと、
前記証明情報送信手段によって、有効期限が設定された前記証明情報を、前記取得した第１のセッション鍵で暗号化して前記端末機器に送信する証明情報送信ステップと、
前記証明情報受信手段によって、前記端末機器より前記証明情報を取得した前記サービスサーバから、前記証明情報を受信する証明情報受信ステップと、
前記第２のセッション鍵取得手段によって、前記端末機器から、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記端末機器に送信することにより前記第２のセッション鍵を取得して前記端末機器と共有する第２のセッション鍵取得ステップと、
前記検出情報生成手段によって、前記取得した第２のセッション鍵を用いて前記証明情報を所定の手順で変換することにより、前記証明情報が通信途中で改変されていないことを検出するための検出情報を生成する検出情報生成ステップと
から構成され、
前記証明情報送信ステップでは、前記証明情報と共に、前記検出情報生成ステップで生成した検出情報を前記端末機器に送信する
機器認証方法。
【請求項１０】
所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用する端末機器で用いる機器認証方法であって、
前記端末機器は、要求手段と、暗号化サーバ固有情報送信手段と、第１のセッション鍵取得手段と、証明情報受信手段と、証明情報送信手段と、第２のセッション鍵取得手段と、検出情報受信手段と、検出情報生成手段と、確認手段と
を備え、
前記要求手段によって、前記機器認証サーバに対し、機器認証を要求する要求ステップと、
前記暗号化サーバ固有情報送信手段によって、前記要求に応じて前記機器認証サーバが送信してきたサーバ固有情報を前記秘密情報で暗号化して前記機器認証サーバに送信する暗号化サーバ固有情報送信ステップと、
前記第１のセッション鍵取得手段によって、前記機器認証サーバから、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記機器認証サーバに送信することにより第１のセッション鍵を取得して前記機器認証サーバと共有する第１のセッション鍵取得ステップと、
前記証明情報受信手段によって、前記機器認証サーバから、前記第１のセッション鍵で暗号化され、前記機器認証サーバで機器認証されたことを証明する証明情報であって、有効期限が設定された前記証明情報を受信する証明情報受信ステップと、
前記証明情報送信手段によって、有効期限が設定された前記証明情報を前記第１のセッション鍵で復号した後、前記サービスサーバに送信する証明情報送信ステップと、
前記第２のセッション鍵取得手段によって、前記機器認証サーバから、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記機器認証サーバに送信することにより前記第２のセッション鍵を取得して前記機器認証サーバと共有する第２のセッション鍵取得ステップと、
前記検出情報受信手段によって、第２のセッション鍵により前記証明情報を所定の手順で変換した情報であって、前記証明情報が通信途中で改変されていないことを検出するための検出情報を前記機器認証サーバから受信する検出情報受信ステップと、
前記検出情報生成手段によって、前記取得した第２のセッション鍵を用いて前記受信した証明情報を前記所定の手順で変換することにより検出情報を生成する検出情報生成ステップと、
前記確認手段によって、前記生成した検出情報と、前記受信した検出情報との同一性を判定することにより、前記受信した証明情報が改変されていないことを確認する確認ステップと
から構成される機器認証方法。
【請求項１１】
所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用するコンピュータで構成された機器認証サーバを動作させるための機器認証プログラムであって、
前記端末機器から機器認証の要求を受ける要求受け付け機能と、
前記要求を受け付けた端末機器に対して、自己が発生したサーバ固有情報を前記端末機器に送信するサーバ固有情報送信機能と、
前記端末機器から、前記サーバ固有情報を前記秘密情報で暗号化した暗号化サーバ固有情報を受信する暗号化サーバ固有情報受信機能と、
前記受信した暗号化サーバ固有情報を前記秘密鍵で復号できたことにより前記端末機器を機器認証する機器認証機能と、
前記端末機器から、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記端末機器に送信することにより第１のセッション鍵を取得して前記端末機器と共有する第１のセッション鍵取得機能と、
前記端末機器が前記機器認証機能で機器認証されたことを証明する証明情報に有効期限を設定する期限設定機能と、
有効期限が設定された前記証明情報を、前記取得した第１のセッション鍵で暗号化して前記端末機器に送信する証明情報送信機能と、
前記端末機器より前記証明情報を取得した前記サービスサーバから、前記証明情報を受信する証明情報受信機能と、
前記端末機器から、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記端末機器に送信することにより前記第２のセッション鍵を取得して前記端末機器と共有する第２のセッション鍵取得機能と、
前記取得した第２のセッション鍵を用いて前記証明情報を所定の手順で変換することにより、前記証明情報が通信途中で改変されていないことを検出するための検出情報を生成する検出情報生成機能と
をコンピュータで実現し、
前記証明情報送信機能は、前記証明情報と共に、前記検出情報生成機能で生成した検出情報を前記端末機器に送信する
機器認証プログラム。
【請求項１２】
所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用するコンピュータで構成された端末機器を動作させるための機器認証プログラムであって、
前記機器認証サーバに対し、機器認証を要求する要求機能と、
前記要求に応じて前記機器認証サーバが送信してきたサーバ固有情報を前記秘密情報で暗号化して前記機器認証サーバに送信する暗号化サーバ固有情報送信機能と、
前記機器認証サーバから、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記機器認証サーバに送信することにより第１のセッション鍵を取得して前記機器認証サーバと共有する第１のセッション鍵取得機能と、
前記機器認証サーバから、前記第１のセッション鍵で暗号化され、前記機器認証サーバで機器認証されたことを証明する証明情報であって、有効期限が設定された前記証明情報を受信する証明情報受信機能と、
有効期限が設定された前記証明情報を前記第１のセッション鍵で復号した後、前記サービスサーバに送信する証明情報送信機能と、
前記機器認証サーバから、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記機器認証サーバに送信することにより前記第２のセッション鍵を取得して前記機器認証サーバと共有する第２のセッション鍵取得機能と、
第２のセッション鍵により前記証明情報を所定の手順で変換した情報であって、前記証明情報が通信途中で改変されていないことを検出するための検出情報を前記機器認証サーバから受信する検出情報受信機能と、
前記取得した第２のセッション鍵を用いて前記受信した証明情報を前記所定の手順で変換することにより検出情報を生成する検出情報生成機能と、
前記生成した検出情報と、前記受信した検出情報との同一性を判定することにより、前記受信した証明情報が改変されていないことを確認する確認機能と
をコンピュータで実現する機器認証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器認証システムなどに関し、特に、共通鍵方式を用いて機器認証することにより、機器認証効率を高めるものに関する。
【背景技術】
【０００２】
近年、ＣＥ（ＣＥ：Ｃｏｎｓｕｍｅｒ  Ｅｌｅｃｔｒｏｎｉｃｓ）機器の普及が広まりつつある。ＣＥ機器とは、例えば、ビデオデッキ、ステレオ、テレビなどのオーディオビジュアル機器や、炊飯器、冷蔵庫などの家電製品や、その他の電子機器にコンピュータを内蔵させ、ネットワークを介したサービスを利用できるようにしたものである。
【０００３】
ネットワーク上には、各種のサービスサーバが存在し、ＣＥ機器は、これらサービスサーバが提供するサービスを利用することができる。
例えば、ＣＥ機器がビデオデッキ、ステレオ、テレビなどのオーディオビジュアル機器である場合、サービスサーバは、これらＣＥ機器にコンテンツを送信することができる。
【０００４】
また、センサを内蔵した便器でＣＥ機器を構成し、ユーザの便から検出された信号を解析してユーザの健康状態をチェックするサービスサーバも提案されている。
このように、ＣＥ機器の種類は多岐に渡り、これらのＣＥ機器にサービスを提供するサービスサーバも各種存在する。
【０００５】
サービスサーバは、サービスを提供する際に、ＣＥ機器が正当なものであるか否かを確認するために機器認証を求める場合がある。
ＣＥ機器は、当該ＣＥ機器に固有のＩＤ情報である機器ＩＤや、機器認証を行うための秘密情報であるパスフレーズを記憶しており、これらの情報を用いてＣＥ機器が正当なものか否かを判定する機器認証サーバがネットワーク上に設けられている。
【０００６】
ＣＥ機器は、サービスサーバから機器認証要求を受けると、機器認証サーバに機器認証をしてもらい、その結果をサービスサーバに送信する。
サービスサーバは、この機器認証結果が正当なものであることを機器認証サーバで確認した後、ＣＥ機器にサービスの提供を開始する。
【０００７】
機器認証を行う場合、一般的に機器認証サーバとＣＥ機器は、公開鍵と秘密鍵の対からなる非対称鍵を用いて情報交換を行う。
公開鍵を用いた認証を行うものに、次のユーザ相互認証装置がある。
【特許文献１】特許第３２７８６１２号公報
【０００８】
この発明では、クライアントからサーバへの最初の接続時に、互いに相手の公開鍵を使って相互に認証用の乱数および共通鍵情報を暗号化して交換することで相互認証を行うとともに以後の通信でどのような認証用の乱数および共通鍵を使用するかを両者で取り決める。また、前記認証用の乱数および共通鍵をクライアントおよびサーバ側の記憶手段で記憶する。
２回目以降の同一クライアントとサーバ間の接続時、前記記憶してある認証用の乱数を前記共通鍵で暗号化して交換することにより同一相手であるか否かを相互に認証する。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
ところで、公開鍵と秘密鍵を用いた機器認証方式は、機器、機器認証サーバ共に計算量が多くなるという問題があった。特に、機器認証サーバは、複数の機器の機器認証を行うので、計算負荷が集中する。
また、機器認証サーバの秘密鍵が漏洩すると、この秘密鍵に対応する公開鍵を使用する全ての機器に対して影響が及ぶ可能性があるという問題もあった。
【００１０】
そこで、本発明の目的は、共通鍵方式を用いることにより効率的に機器認証を行うことができる機器認証システムなどを提供することである。
【課題を解決するための手段】
【００１１】
本発明は、前記目的を達成するために、所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムであって、前記機器認証サーバは、前記端末機器から機器認証の要求を受ける要求受け付け手段と、前記要求を受け付けた端末機器に対して、自己が発生したサーバ固有情報を前記端末機器に送信するサーバ固有情報送信手段と、前記端末機器から、前記サーバ固有情報を前記秘密情報で暗号化した暗号化サーバ固有情報を受信する暗号化サーバ固有情報受信手段と、前記受信した暗号化サーバ固有情報を前記秘密鍵で復号できたことにより前記端末機器を機器認証する機器認証手段と、前記端末機器から、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記端末機器に送信することにより第１のセッション鍵を取得して前記端末機器と共有する第１のセッション鍵取得手段と、前記端末機器が前記機器認証手段で機器認証されたことを証明する証明情報に有効期限を設定する期限設定手段と、有効期限が設定された前記証明情報を、前記取得した第１のセッション鍵で暗号化して前記端末機器に送信する第１の証明情報送信手段と、前記端末機器より前記証明情報を取得した前記サービスサーバから、前記証明情報を受信する第１の証明情報受信手段と、前記端末機器から、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記端末機器に送信することにより前記第２のセッション鍵を取得して前記端末機器と共有する第２のセッション鍵取得手段と、前記取得した第２のセッション鍵を用いて前記証明情報を所定の手順で変換することにより、前記証明情報が通信途中で改変されていないことを検出するための検出情報を生成する第１の検出情報生成手段とを具備し、前記第１の証明情報送信手段は、前記証明情報と共に、前記第１の検出情報生成手段で生成した検出情報を前記端末機器に送信し、前記端末機器は、前記機器認証サーバに対し、機器認証を要求する要求手段と、前記要求に応じて前記機器認証サーバが送信してきたサーバ固有情報を前記秘密情報で暗号化して前記機器認証サーバに送信する暗号化サーバ固有情報送信手段と、前記機器認証サーバから、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記機器認証サーバに送信することにより第１のセッション鍵を取得して前記機器認証サーバと共有する第３のセッション鍵取得手段と、前記機器認証サーバから、前記第１のセッション鍵で暗号化され、前記機器認証サーバで機器認証されたことを証明する証明情報であって、有効期限が設定された前記証明情報を受信する第２の証明情報受信手段と、有効期限が設定された前記証明情報を前記第１のセッション鍵で復号した後、前記サービスサーバに送信する第２の証明情報送信手段と、前記機器認証サーバから、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記機器認証サーバに送信することにより前記第２のセッション鍵を取得して前記機器認証サーバと共有する第４のセッション鍵取得手段と、第２のセッション鍵により前記証明情報を所定の手順で変換した情報であって、前記証明情報が通信途中で改変されていないことを検出するための検出情報を前記機器認証サーバから受信する検出情報受信手段と、前記取得した第２のセッション鍵を用いて前記受信した証明情報を前記所定の手順で変換することにより検出情報を生成する第２の検出情報生成手段と、前記生成した検出情報と、前記受信した検出情報との同一性を判定することにより、前記受信した証明情報が改変されていないことを確認する確認手段とを具備する機器認証システムを提供する（第１の構成）。
また、本発明は、所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用する機器認証サーバであって、前記端末機器から機器認証の要求を受ける要求受け付け手段と、前記要求を受け付けた端末機器に対して、自己が発生したサーバ固有情報を前記端末機器に送信するサーバ固有情報送信手段と、前記端末機器から、前記サーバ固有情報を前記秘密情報で暗号化した暗号化サーバ固有情報を受信する暗号化サーバ固有情報受信手段と、前記受信した暗号化サーバ固有情報を前記秘密鍵で復号できたことにより前記端末機器を機器認証する機器認証手段と、前記端末機器から、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記端末機器に送信することにより第１のセッション鍵を取得して前記端末機器と共有する第１のセッション鍵取得手段と、前記端末機器が前記機器認証手段で機器認証されたことを証明する証明情報に有効期限を設定する期限設定手段と、有効期限が設定された前記証明情報を、前記取得した第１のセッション鍵で暗号化して前記端末機器に送信する証明情報送信手段と、前記端末機器より前記証明情報を取得した前記サービスサーバから、前記証明情報を受信する証明情報受信手段と、前記端末機器から、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記端末機器に送信することにより前記第２のセッション鍵を取得して前記端末機器と共有する第２のセッション鍵取得手段と、前記取得した第２のセッション鍵を用いて前記証明情報を所定の手順で変換することにより、前記証明情報が通信途中で改変されていないことを検出するための検出情報を生成する検出情報生成手段とを具備し、前記証明情報送信手段は、前記証明情報と共に、前記検出情報生成手段で生成した検出情報を前記端末機器に送信する機器認証サーバを提供する（第２の構成）。
第２の構成において、前記サービスサーバから送信される前記証明情報が正しいことを確認し、確認した確認結果を前記サービスサーバに送信する確認結果送信手段を具備するように構成することもできる（第３の構成）。
第２の構成において、前記端末機器が生成し、前記秘密情報で暗号化した端末固有情報を、前記端末機器から受信する端末固有情報受信手段と、前記受信した端末固有情報を前記秘密情報で復号することにより取得し、前記取得した端末固有情報を前記端末機器に送信する端末固有情報送信手段とを具備するように構成することもできる（第４の構成）。
第３の構成において、前記証明情報は、前記端末機器の機器認証結果を特定する特定情報と、前記特定情報を固有のサーバ鍵で暗号化した暗号化特定情報とから構成され、前記サービスサーバから受信した証明情報に含まれる暗号化特定情報を前記サーバ鍵で復号する暗号化特定情報復号手段と、前記復号した特定情報と、前記受信した証明情報に含まれる特定情報が同一であることを判定する判定手段と、前記判定した特定情報を用いて機器認証結果を特定する機器認証結果特定手段とを具備し、前記確認結果送信手段は、前記機器認証結果特定手段で特定した機器認証結果を送信するように構成することもできる（第５の構成）。
第２の構成において、前記端末機器の機器ＩＤと、当該端末機器が記憶している秘密情報と、を対応付けて記憶した対応記憶手段と、前記要求を受け付けた端末機器から機器ＩＤを受信する機器ＩＤ受信手段と、前記受信した機器ＩＤを前記対応記憶手段で検索し、前記機器ＩＤに対応付けられた秘密情報を特定する秘密情報特定手段とを具備し、前記機器認証手段は、前記特定した秘密情報で前記サーバ固有情報を暗号化するように構成することもできる（第６の構成）。
また、本発明は、所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用する端末機器であって、前記機器認証サーバに対し、機器認証を要求する要求手段と、前記要求に応じて前記機器認証サーバが送信してきたサーバ固有情報を前記秘密情報で暗号化して前記機器認証サーバに送信する暗号化サーバ固有情報送信手段と、前記機器認証サーバから、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記機器認証サーバに送信することにより第１のセッション鍵を取得して前記機器認証サーバと共有する第１のセッション鍵取得手段と、前記機器認証サーバから、前記第１のセッション鍵で暗号化され、前記機器認証サーバで機器認証されたことを証明する証明情報であって、有効期限が設定された前記証明情報を受信する証明情報受信手段と、有効期限が設定された前記証明情報を前記第１のセッション鍵で復号した後、前記サービスサーバに送信する証明情報送信手段と、前記機器認証サーバから、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記機器認証サーバに送信することにより前記第２のセッション鍵を取得して前記機器認証サーバと共有する第２のセッション鍵取得手段と、第２のセッション鍵により前記証明情報を所定の手順で変換した情報であって、前記証明情報が通信途中で改変されていないことを検出するための検出情報を前記機器認証サーバから受信する検出情報受信手段と、前記取得した第２のセッション鍵を用いて前記受信した証明情報を前記所定の手順で変換することにより検出情報を生成する検出情報生成手段と、前記生成した検出情報と、前記受信した検出情報との同一性を判定することにより、前記受信した証明情報が改変されていないことを確認する確認手段とを具備する端末機器を提供する（第７の構成）。
第７の構成において、端末固有情報を生成し、前記秘密情報で暗号化した後、前記機器認証サーバに送信する端末固有情報送信手段と、前記送信した端末固有情報が、前記機器認証サーバで復号されたことを確認することにより、前記機器認証サーバを認証するサーバ認証手段とを具備するように構成することもできる（第８の構成）。
また、本発明は、所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用する機器認証サーバで用いる機器認証方法であって、前記機器認証サーバは、要求受け付け手段と、サーバ固有情報送信手段と、暗号化サーバ固有情報受信手段と、機器認証手段と、第１のセッション鍵取得手段と、期限設定手段と、証明情報送信手段と、証明情報受信手段と、第２のセッション鍵取得手段と、検出情報生成手段とを具備し、前記要求受け付け手段によって、前記端末機器から機器認証の要求を受ける要求受け付けステップと、前記サーバ固有情報送信手段によって、前記要求を受け付けた端末機器に対して、自己が発生したサーバ固有情報を前記端末機器に送信するサーバ固有情報送信ステップと、前記暗号化サーバ固有情報受信手段によって、前記端末機器から、前記サーバ固有情報を前記秘密情報で暗号化した暗号化サーバ固有情報を受信する暗号化サーバ固有情報受信ステップと、前記機器認証手段によって、前記受信した暗号化サーバ固有情報を前記秘密鍵で復号できたことにより前記端末機器を機器認証する機器認証ステップと、前記第１のセッション鍵取得手段によって、前記端末機器から、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記端末機器に送信することにより第１のセッション鍵を取得して前記端末機器と共有する第１のセッション鍵取得ステップと、前記期限設定手段によって、前記端末機器が前記機器認証手段で機器認証されたことを証明する証明情報に有効期限を設定する期限設定ステップと、前記証明情報送信手段によって、有効期限が設定された前記証明情報を、前記取得した第１のセッション鍵で暗号化して前記端末機器に送信する証明情報送信ステップと、前記証明情報受信手段によって、前記端末機器より前記証明情報を取得した前記サービスサーバから、前記証明情報を受信する証明情報受信ステップと、前記第２のセッション鍵取得手段によって、前記端末機器から、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記端末機器に送信することにより前記第２のセッション鍵を取得して前記端末機器と共有する第２のセッション鍵取得ステップと、前記検出情報生成手段によって、前記取得した第２のセッション鍵を用いて前記証明情報を所定の手順で変換することにより、前記証明情報が通信途中で改変されていないことを検出するための検出情報を生成する検出情報生成ステップとから構成され、前記証明情報送信ステップでは、前記証明情報と共に、前記検出情報生成ステップで生成した検出情報を前記端末機器に送信する機器認証方法を提供する（第９の構成）。
また、本発明は、所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用する端末機器で用いる機器認証方法であって、前記端末機器は、要求手段と、暗号化サーバ固有情報送信手段と、第１のセッション鍵取得手段と、証明情報受信手段と、証明情報送信手段と、第２のセッション鍵取得手段と、検出情報受信手段と、検出情報生成手段と、確認手段とを備え、前記要求手段によって、前記機器認証サーバに対し、機器認証を要求する要求ステップと、前記暗号化サーバ固有情報送信手段によって、前記要求に応じて前記機器認証サーバが送信してきたサーバ固有情報を前記秘密情報で暗号化して前記機器認証サーバに送信する暗号化サーバ固有情報送信ステップと、前記第１のセッション鍵取得手段によって、前記機器認証サーバから、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記機器認証サーバに送信することにより第１のセッション鍵を取得して前記機器認証サーバと共有する第１のセッション鍵取得ステップと、前記証明情報受信手段によって、前記機器認証サーバから、前記第１のセッション鍵で暗号化され、前記機器認証サーバで機器認証されたことを証明する証明情報であって、有効期限が設定された前記証明情報を受信する証明情報受信ステップと、前記証明情報送信手段によって、有効期限が設定された前記証明情報を前記第１のセッション鍵で復号した後、前記サービスサーバに送信する証明情報送信ステップと、前記第２のセッション鍵取得手段によって、前記機器認証サーバから、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記機器認証サーバに送信することにより前記第２のセッション鍵を取得して前記機器認証サーバと共有する第２のセッション鍵取得ステップと、前記検出情報受信手段によって、第２のセッション鍵により前記証明情報を所定の手順で変換した情報であって、前記証明情報が通信途中で改変されていないことを検出するための検出情報を前記機器認証サーバから受信する検出情報受信ステップと、前記検出情報生成手段によって、前記取得した第２のセッション鍵を用いて前記受信した証明情報を前記所定の手順で変換することにより検出情報を生成する検出情報生成ステップと、前記確認手段によって、前記生成した検出情報と、前記受信した検出情報との同一性を判定することにより、前記受信した証明情報が改変されていないことを確認する確認ステップとから構成される機器認証方法を提供する（第１０の構成）。
また、本発明は、所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用するコンピュータで構成された機器認証サーバを動作させるための機器認証プログラムであって、前記端末機器から機器認証の要求を受ける要求受け付け機能と、前記要求を受け付けた端末機器に対して、自己が発生したサーバ固有情報を前記端末機器に送信するサーバ固有情報送信機能と、前記端末機器から、前記サーバ固有情報を前記秘密情報で暗号化した暗号化サーバ固有情報を受信する暗号化サーバ固有情報受信機能と、前記受信した暗号化サーバ固有情報を前記秘密鍵で復号できたことにより前記端末機器を機器認証する機器認証機能と、前記端末機器から、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記端末機器に送信することにより第１のセッション鍵を取得して前記端末機器と共有する第１のセッション鍵取得機能と、前記端末機器が前記機器認証機能で機器認証されたことを証明する証明情報に有効期限を設定する期限設定機能と、有効期限が設定された前記証明情報を、前記取得した第１のセッション鍵で暗号化して前記端末機器に送信する証明情報送信機能と、前記端末機器より前記証明情報を取得した前記サービスサーバから、前記証明情報を受信する証明情報受信機能と、前記端末機器から、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記端末機器に送信することにより前記第２のセッション鍵を取得して前記端末機器と共有する第２のセッション鍵取得機能と、前記取得した第２のセッション鍵を用いて前記証明情報を所定の手順で変換することにより、前記証明情報が通信途中で改変されていないことを検出するための検出情報を生成する検出情報生成機能とをコンピュータで実現し、前記証明情報送信機能は、前記証明情報と共に、前記検出情報生成機能で生成した検出情報を前記端末機器に送信する機器認証プログラムを提供する（第１１の構成）。
また、本発明は、所定の秘密情報を記憶した端末機器と、前記秘密情報を記憶し、前記端末機器を機器認証する機器認証サーバと、前記機器認証サーバで機器認証を行った前記端末機器にサービスを提供するサービスサーバと、から構成された機器認証システムで使用するコンピュータで構成された端末機器を動作させるための機器認証プログラムであって、前記機器認証サーバに対し、機器認証を要求する要求機能と、前記要求に応じて前記機器認証サーバが送信してきたサーバ固有情報を前記秘密情報で暗号化して前記機器認証サーバに送信する暗号化サーバ固有情報送信機能と、前記機器認証サーバから、前記秘密情報で暗号化された第１のセッション鍵を受信し、前記受信した第１のセッション鍵を前記秘密情報で復号するか、又は、第１のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第１のセッション鍵を前記機器認証サーバに送信することにより第１のセッション鍵を取得して前記機器認証サーバと共有する第１のセッション鍵取得機能と、前記機器認証サーバから、前記第１のセッション鍵で暗号化され、前記機器認証サーバで機器認証されたことを証明する証明情報であって、有効期限が設定された前記証明情報を受信する証明情報受信機能と、有効期限が設定された前記証明情報を前記第１のセッション鍵で復号した後、前記サービスサーバに送信する証明情報送信機能と、前記機器認証サーバから、前記秘密情報で暗号化された第２のセッション鍵を受信し、前記受信した前記第２のセッション鍵を前記秘密情報で復号するか、又は、第２のセッション鍵を生成して前記秘密鍵で暗号化した後、前記暗号化した第２のセッション鍵を前記機器認証サーバに送信することにより前記第２のセッション鍵を取得して前記機器認証サーバと共有する第２のセッション鍵取得機能と、第２のセッション鍵により前記証明情報を所定の手順で変換した情報であって、前記証明情報が通信途中で改変されていないことを検出するための検出情報を前記機器認証サーバから受信する検出情報受信機能と、前記取得した第２のセッション鍵を用いて前記受信した証明情報を前記所定の手順で変換することにより検出情報を生成する検出情報生成機能と、前記生成した検出情報と、前記受信した検出情報との同一性を判定することにより、前記受信した証明情報が改変されていないことを確認する確認機能とをコンピュータで実現する機器認証プログラムを提供する（第１２の構成）。
【発明の効果】
【００１２】
共通鍵を用いて機器認証を効率的に行うことができる。
【発明を実施するための最良の形態】
【００１３】
（実施の形態の概要）  本実施の形態の機器認証システムは、ＣＥ機器と、ＣＥ機器にサービスを提供するサービスサーバと、ＣＥ機器を機器認証する機器認証サーバから構成されている。
ＣＥ機器がサービスサーバにサービスの提供を要求すると、サービスサーバは、ＣＥ機器に機器認証サーバでの機器認証を要求する。
この要求を受けてＣＥ機器は、機器認証サーバに機器認証を行ってもらい、機器認証結果をサービスサーバに送信する。
サービスサーバは、ＣＥ機器から機器認証結果を受信し、これが確かに機器認証サーバで行ったものであることを機器認証サーバで確認した後、サービスの提供を開始する。
【００１４】
ＣＥ機器と機器認証サーバは、パスフレーズを共有しており、ＣＥ機器と機器認証サーバは、それぞれ相手がパスフレーズを記憶していることを確認することにより、相互に認証を行う。
このパスフレーズの確認は、乱数をパスフレーズを用いて暗号化してこれを相手に送信し、相手がパスフレーズを用いて受信情報を復号し、この乱数を取得できたことを確認することにより行う。この場合、パスフレーズを共通鍵として使用している。
【００１５】
更に、乱数を暗号化して相手に送る際に、セッション鍵を生成してパスフレーズにより暗号化した後相手方に送信し、パスフレーズの確認後は、このセッション鍵を共通鍵として通信を行う。
セッション鍵は、何れが生成してもよいが、本実施の形態では機器認証サーバが生成してＣＥ機器に送信するように構成した。
このように、パスフレーズの確認後は、セッション鍵を共通鍵として使用することにより、パスフレーズの使用を認証時に限定することができる。
【００１６】
共通鍵方式を用いて機器認証を行うと、処理効率を大幅に高めることができる。
概算によると、対称鍵方式（暗号化と復号に同じ鍵情報を用いるものであり、例えば共通鍵を用いる）を用いた情報処理負荷は、非対称鍵方式（暗号化と復号に異なる鍵情報を用いるものであり、例えば、公開鍵と、これに対応する秘密鍵を用いる）を用いた情報処理負荷の１００分の１以下になる。
【００１７】
また、機器認証サーバが秘密鍵を保持していた場合、この秘密鍵が漏洩すると、被害はこの秘密鍵に対応する公開鍵を有する複数のＣＥ機器に及ぶが、ある１つの共通鍵が漏洩した場合の被害は、この共通鍵を有するＣＥ機器に限定されるためリスクを分散させることができるためセキュリティレベルを高めることもできる。
【００１８】
（実施の形態の詳細）
図１は、本実施の形態の機器認証システムの構成を模式的に示した図である。
機器認証システム１は、ＣＥ機器３、サービスサーバ７、機器認証サーバ５がネットワークを介して通信可能に接続されている。
なお、図１では、説明を簡略化するためにＣＥ機器３とサービスサーバ７が１台ずつ記載されているが、通常これらは複数台存在する。
【００１９】
ＣＥ機器３は、サービスサーバ７が提供するサービスを利用することができるＣＥ機器であって、例えば、ビデオデッキ、テレビ、ステレオ、ゲーム機などの電気製品から構成されている。
ＣＥ機器３は、機器認証サーバ５に機器認証を依頼する機器認証モジュールを備えており、機器ＩＤ、パスフレーズ、機器認証サーバのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒｓ）など機器認証に必要な認証情報を記憶している。
【００２０】
機器ＩＤ（Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）とは、ＣＥ機器３に付与された固有の情報であり、ネットワーク上でＣＥ機器３を識別するための識別情報である。
パスフレーズとは、機器認証サーバ５とＣＥ機器３が共有する秘密情報であって、機器認証サーバ５とＣＥ機器３が各々相手を機器認証するのに用いる。一般に秘密情報のうち、比較的情報量が大きいものをパスフレーズと呼び、情報量が小さいものをパスワードと呼んでいる。情報量が多いほど、第三者による解読が困難になり、セキュリティレベルが高まる。
機器認証サーバのＵＲＬは、機器認証サイトを特定する情報であり、ＣＥ機器３は、機器認証サイトを用いて機器認証サーバ５にアクセスすることができる。
【００２１】
ＣＥ機器３の機器認証モジュールは、サービスサーバ７からの機器認証要求を受けて、
機器認証サーバ５で機器認証を行ってもらい、その機器認証結果をサービスサーバ７に送信する。
【００２２】
サービスサーバ７は、ＣＥ機器３に、例えば、コンテンツを送信するなどサービスを提供するサーバである。
サービスサーバ７は、ＣＥ機器３からサービスの提供を要求された場合、ＣＥ機器３に機器認証を要求し、機器認証結果をＣＥ機器３から受信する。
【００２３】
サービスサーバ７は、機器認証サーバ５の認証確認サイトのＵＲＬを記憶しており、このＵＲＬを用いて機器認証サーバ５にアクセスし、ＣＥ機器３から受信した機器認証結果の確認を行う。
そして、この機器認証結果が確かに機器認証サーバ５が行ったものであることを確認し、サービスの提供を開始する。
【００２４】
機器認証サーバ５は、ＣＥ機器３からの機器認証要求を受けてＣＥ機器３を機器認証するほか、サービスサーバ７から機器認証結果の確認要求を受けて機器認証結果の確認を行う。
機器認証サーバ５は、各ＣＥ機器３（図では、ＣＥ機器３を１台のみ図示している）のパスフレーズを、それぞれのＣＥ機器３の機器ＩＤと対応させて記憶しており（対応記憶手段）、ＣＥ機器３から機器ＩＤを取得することにより、各ＣＥ機器３のパスフレーズを特定することができる。
【００２５】
このように、機器認証サーバ５は、各ＣＥ機器３とパスフレーズを共有しており、機器認証要求をしてきた相手がパスフレーズを記憶していることを確認することにより、相手方が正当なＣＥ機器３であることを確認する。
更に、本実施の形態では、ＣＥ機器３側も機器認証要求を行った相手がパスフレーズを記憶していることを確認することにより、相手方が正当な機器認証サーバ５であることを確認する。
このように、相互に相手方を認証する処理を相互認証と呼ぶ。
【００２６】
また、機器認証サーバ５は、各サービスサーバ７（図では、サービスサーバ７を１台のみ図示している）のサービスサイトにアクセスするための接続先ＵＲＬを記憶している。
ＣＥ機器３からサービスを受けようとしているサービスサイトのＵＲＬ（接続先ＵＲＬ）を送信してもらい、この接続先ＵＲＬが記憶されているか確認する。
【００２７】
このように、機器認証システム１では、サービスサーバ７のサービスサイトのＵＲＬを機器認証サーバ５に登録し、ＣＥ機器３がサービスを受けようとしている相手のサービスサーバ７が登録済みであるか否かを確認するようになっている。これにより、不正なサービスサーバ７に機器認証結果が渡ることを防止することができる。
【００２８】
更に、機器認証サーバ５は、機器認証サーバ５に固有なサーバ鍵Ｋｓを記憶している。
詳細は後述するが、サーバ鍵Ｋｓは、サービスサーバ７から機器認証結果の確認要求を受けた際に、サービスサーバ７が送信してきた機器認証結果が確かに自身が発行したものであることを確認するために用いる。
即ち、機器認証サーバ５は、機器認証結果をサーバ鍵Ｋｓで暗号化しておき、サービスサーバ７から受信した機器認証結果がサーバ鍵Ｋｓで復号できたことにより、この機器認証結果は、確かに自身が行ったものであることを確認する。
【００２９】
次に、図２を用いてＣＥ機器３と機器認証サーバ５が相互認証を行い、更に共通鍵を共有する手順の概念について説明する。
以下で説明する手順は、ＩＳＯ９７９８−２で定められた手順に準拠するものである。
まず、機器認証サーバ５がサーバ乱数Ｒｓを生成し、ＣＥ機器３に送信する（ステップ２０）。このとき、機器認証サーバ５は、送信したサーバ乱数Ｒｓを記憶しておく。
【００３０】
ＣＥ機器３は、機器認証サーバ５からサーバ乱数Ｒｓを受信すると共に、クライアント乱数Ｒｃを生成する（ステップ５）。
次に、ＣＥ機器３は、クライアント乱数Ｒｃとサーバ乱数ＲｓをパスフレーズＰＰで暗号化し、トークン１を生成する。なお、ここでは、トークン１を以下の数式で表す。
【００３１】
（数１）トークン１＝Ｅ（ＰＰ，Ｒｃ‖Ｒｓ）…（１）
【００３２】
本実施の形態では、一般的に、鍵情報Ｋを用いて暗号方式Ｅにより情報Ａを暗号化した暗号化情報をＥ（Ｋ，Ａ）と表すことにする。
このため、数式（１）は、トークン１が情報「Ｒｃ‖Ｒｓ」を鍵情報ＰＰ（ここではパスフレーズ）を用いて暗号化したものであることを意味する。
「Ｒｃ‖Ｒｓ」は、ＲｃとＲｓを用いて生成された情報を意味し、例えば、両者をこの順序で連結することにより生成することができる。この場合、Ｒｃが「１２３」であり、
Ｒｓが「４５６」であった場合、「Ｒｃ‖Ｒｓ」は「１２３４５６」となる。
【００３３】
ＣＥ機器３は、生成したクライアント乱数Ｒｃを記憶しておくと共に、トークン１を機器認証サーバ５に送信する（ステップ１０）。
機器認証サーバ５は、ＣＥ機器３からトークン１を受信し、これをパスフレーズを用いて復号し、「Ｒｃ‖Ｒｓ」を取得する。
機器認証サーバ５は、取得した情報が、Ｒｃの桁数と、ＲｃとＲｓがこの順序で連結されたものであることを予め知っており、取得した情報からＲｓを抽出する。そして、先に記憶しておいたＲｓと比較し、同じものであることを確認する（ステップ２５）。
【００３４】
パスフレーズを用いてトークン１を復号した結果、Ｒｓが取得できたということは、ＣＥ機器３がＲｓをこのパスフレーズにより暗号化したことを意味し、これにより、ＣＥ機器３がこのパスフレーズを記憶していることを確認することができる。
これにより、機器認証サーバ５は、ＣＥ機器３が正当なＣＥ機器であることを認証することができる。
【００３５】
次に、機器認証サーバ５は、セッション鍵Ｋを生成する（ステップ３０）。このセッション鍵Ｋは、ＣＥ機器３と共有して秘密情報として使用するための情報であり、共有鍵として使用するものである。
ＣＥ機器３と機器認証サーバ５で相互にパスフレーズＰＰを確認した後は、パスフレーズＰＰを共通鍵として使用せずに、セッション鍵Ｋを共通鍵として使用する。これにより、パスフレーズＰＰの使用を必要最低限に抑えることができる。
【００３６】
機器認証サーバ５は、トークン１を復号することにより先に取得したＲｓ、Ｒｃと、セッション鍵Ｋを用いて次の式（２）で表されるトークン２を生成し、ＣＥ機器３に送信する（ステップ３５）。
【００３７】
（数２）トークン２＝Ｅ（ＰＰ，Ｒｓ‖Ｒｃ‖Ｋ）…（２）
【００３８】
ここで、ＲｓとＲｃの順序を式（１）と逆にしたのは、第三者による暗号解読を困難にするためである。
ＣＥ機器３は、トークン２を受信し、パスフレーズを用いてトークン２を復号することにより「Ｒｓ‖Ｒｃ‖Ｋ」を取得する。
ＣＥ機器３は、取得した情報が、Ｒｓ、Ｒｃ、Ｋをこの順序で連結したものであることを予め知っており、トークン２を復号した結果からこれらの情報を抽出する。
【００３９】
そして、取得したＲｃと、先に記憶しておいたＲｃが同一のものであることを確認し、
機器認証サーバ５がパスフレーズを記憶していることを確認する（ステップ１５）。
これにより、ＣＥ機器３は、機器認証サーバ５が正当な機器認証サーバであることを認証する。
【００４０】
ＣＥ機器３は、トークン２を復号することにより、機器認証サーバ５が生成したセッション鍵Ｋを取得することができ、これにより機器認証サーバ５とセッション鍵を共有することができる。
そして、セッション鍵Ｋを共有した後、ＣＥ機器３と機器認証サーバ５は、セッション鍵Ｋを用いた暗号化情報による通信を開始する（ステップ４０）。
以上の手順により、ＣＥ機器３と機器認証サーバ５は、相互認証を行うと共に、共通鍵（セッション鍵Ｋ）を共有することができる。
【００４１】
以上の説明では、機器認証サーバ５がセッション鍵Ｋを生成するものとしたが、これに限定せず、ＣＥ機器３がセッション鍵を生成してこれを機器認証サーバ５に送信するように構成することもできる。
この場合、ＣＥ機器３は、セッション鍵Ｋを生成して、これをトークン１に含め、機器認証サーバ５に送信する。
【００４２】
次に、ＣＥ機器３がサービスサーバ７にサービスの提供を要求してから、サービスの提供が開始されるまでに機器認証システム１が行う情報処理の手順について図３のフローチャートを用いて説明する。
まず、ＣＥ機器３がサービスサーバ７にアクセスし、サービスの提供を要求する。
これに対し、サービスサーバ７は、機器認証トリガをＣＥ機器３に送信する（ステップ５０）。機器認証トリガは、ＣＥ機器３に機器認証を要求する情報である。
【００４３】
なお、本実施の形態では、ＣＥ機器３が機器認証サイトのＵＲＬを記憶しているものとしたが、機器認証トリガに機器認証サーバ５の機器認証サイトのＵＲＬを含めておき、ＣＥ機器３がこのＵＲＬを用いて機器認証サイトにアクセスするように構成することもできる。この場合は、サービスサーバ７は、機器認証を要求する機器認証サーバをＣＥ機器３に指定することができる。
【００４４】
ＣＥ機器３は、サービスサーバ７から機器認証トリガを受信すると、機器認証サーバ５にアクセスする。そして、ＣＥ機器３と機器認証サーバ５との間で機器認証処理が行われる（ステップ６５）。
ＣＥ機器３は、機器認証を終えると、機器認証サーバ５から機器認証結果を受信し、これをサービスサーバ７に送信する（ステップ７０）。
【００４５】
サービスサーバ７は、ＣＥ機器３から機器認証結果を受信し、機器認証サーバ５にアクセスする。
そして、サービスサーバ７は、ＣＥ機器３から受信した機器認証結果を機器認証サーバ５に送信し、サービスサーバ７と機器認証サーバ５の間で機器認証結果の確認処理が行われる（ステップ５５）。
【００４６】
サービスサーバ７は、ＣＥ機器３から受信した機器認証結果が機器認証サーバ５によって発行されたものであることを確認した後、サービスの提供を開始する（ステップ６０）。
そして、ＣＥ機器３は、サービスサーバ７が提供するサービスを利用する（ステップ７５）。
【００４７】
以上の手順で行うＣＥ機器３、機器認証サーバ５、サービスサーバ７間の通信は、ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ）などのプロトコルを用いて暗号化されており、第三者による介入は困難となっている。
なお、後述する本実施の形態の機器認証処理は、例えＳＳＬを用いずとも安全性を保つことができる。
【００４８】
次に、ＣＥ機器３と機器認証サーバ５が暗号化情報による通信を行うのに用いる暗号方式のアルゴリズムについて説明する。
本実施の形態では、暗号化方式の一例としてＡＥＳ１２８（Ａｄｖａｎｃｅｄ  Ｓｔａｎｄａｒｄ  １２８ｂｉｔ  Ｋｅｙ  Ｖｅｒｓｉｏｎ）というアルゴリズムを用いる。またセッション鍵Ｋは２５６ビットの長さを持ち、暗号化用の１２８ビットの鍵Ｋ１とＭＡＣ用の１２８ビットの鍵Ｋ２に分割されるものとする。
【００４９】
このアルゴリズムは、情報（メッセージ）を１２８ビットのブロック（メッセージブロック）に分割し、各ブロックを１２８ビットの共通鍵で暗号化して送受信するものである。
そして、ＡＥＳ１２８には、主にＡＥＳ１２８−ＥＣＢと、ＡＥＳ１２８−ＣＢＣの２つのモードがある。
【００５０】
ＡＥＳ１２８−ＥＣＢは、各メッセージブロックを共通鍵で暗号化することにより、暗号化情報を生成するものである。
本実施の形態では、ＡＥＳ１２８−ＥＣＢによる暗号化情報を次の式（３）で表すことにする。
【００５１】
（数３）ＥＣＢ（Ｋ１，ｍｓｇ１‖ｍｓｇ２‖…‖ｍｓｇｎ）…（３）
【００５２】
式（３）において、メッセージは、１２８ビットのメッセージブロックｍｓｇ１、ｍｓｇ２、…に分割され、各メッセージブロックは１２８ビットの共通鍵Ｋ１により暗号化されている。
【００５３】
ＡＥＳ１２８−ＣＢＣは、各メッセージブロックを共通鍵で暗号化する際に、１つ前のメッセージブロックの暗号化結果を用いて当該メッセージブロックを暗号化する。
このため、先に説明したＡＥＳ１２８−ＥＣＢでは、同じメッセージブロックからは同じ暗号化情報が生成されるが、ＡＥＳ１２８−ＣＢＣでは、異なる暗号化情報が得られる。このため、ＡＥＳ１２８−ＣＢＣは、ＡＥＳ１２８−ＥＣＢに比べてより解読が困難となり、セキュリティレベルを高めることができる。
【００５４】
本実施の形態では、ＡＥＳ１２８−ＣＢＣによる暗号化情報を次の式（４）で表すことにする。
【００５５】
（数４）ＣＢＣ（Ｋ１，ＩＶ，ｍｓｇ１‖ｍｓｇ２‖…‖ｍｓｇｎ）…（４）
【００５６】
式（４）において、メッセージは、１２８ビットのメッセージブロックｍｓｇ１、ｍｓｇ２、…に分割され、各メッセージブロックは１２８ビットの共通鍵Ｋ１により暗号化されている。また、暗号化の際に、１つ前のメッセージブロックの暗号結果を用い、同じメッセージブロックであっても異なる暗号結果が得られるようにしてある。
なお、先頭にあるｍｓｇ１に関しては、１つ前のメッセージブロックが無いため、初期値としてＩＶ（Ｉｎｉｔｉａｌ  Ｖｅｃｔｏｒ）が与えられている。
ＩＶは、ＣＥ機器３と機器認証サーバ５で共有しているものとする。
【００５７】
更に、ＡＥＳ１２８には、ＡＥＳ１２８−ＣＢＣ−ＭＡＣ（以下、ＭＡＣ）というモードがある。
これは、次の式（５）で表され、式（４）で表されたＣＢＣによる暗号化情報の最後のメッセージブロックである。
【００５８】
（数５）ＡＥＳ１２８−ＣＢＣ−ＭＡＣ（Ｋ２，ＩＶ，ｍｓｇ１‖ｍｓｇ２‖…‖ｍｓｇｎ）…（５）
【００５９】
ＭＡＣは、ＡＥＳ１２８−ＣＢＣによる暗号化情報が、通信途中で改竄されていないか否かを確認するための確認情報である。ＭＡＣを用いた確認は、次の要領で行われる。
まずＭＡＣは、対応するＡＥＳ１２８−ＣＢＣによる暗号化情報と共に送信先に送信される。
【００６０】
ＡＥＳ１２８−ＣＢＣによる暗号化情報と、これに対応するＭＡＣを受信した受信者は、セッション鍵Ｋから得られる鍵情報Ｋ１、初期値ＩＶを用いてＡＥＳ１２８−ＣＢＣによる暗号化情報を復号し、メッセージを取得する。
そして、取得したメッセージをセッション鍵Ｋから得られる鍵情報Ｋ２を用いてＡＥＳ１２８−ＣＢＣにて暗号化する。
【００６１】
暗号化情報の受信者は、ＡＥＳ１２８−ＣＢＣにて暗号化した情報の最後のブロックと、先に受信したＭＡＣとを比較する。両者が一致した場合は、ＡＥＳ１２８−ＣＢＣによる暗号化情報が通信途上で改竄されていないことが確認でき、一致しない場合は、ＡＥＳ１２８−ＣＢＣによる暗号化情報が通信途上で改竄されたことを確認することができる。
【００６２】
なお、ＭＡＣの代わりに、メッセージと鍵情報Ｋ２を結合したデータに対するハッシュ値を送るように構成してもよい。
この場合、暗号化情報を受信した側は、Ｋ１で復号した結果と鍵情報Ｋ２を結合したデータに対するハッシュ値を算出し、一緒に送られてきたハッシュ値との同一性を判定することにより、改竄を検知することができる。
【００６３】
次に、以上の暗号化アルゴリズムを用いて機器認証処理（図３のステップ６５）を行う手順について図４を用いながら説明する。
まず、ＣＥ機器３は、サーバ乱数Ｒｓの送信を機器認証サーバ５に要求する（要求手段）（ステップ１００）。
機器認証サーバ５は、この要求を受信して（要求受け付け手段）、セッションＩＤ１と１２８ビットのサーバ乱数Ｒｓを生成してＣＥ機器３に送信する（サーバ固有情報送信手段）（ステップ１５０）。機器認証サーバ５は、サーバ乱数ＲｓとセッションＩＤ１との組合せを記憶しておく。
サーバ乱数Ｒｓは、機器認証サーバ５に固有なサーバ固有情報を構成している。
【００６４】
ここでセッションＩＤ１は、セッションを維持するために用いるセッション識別情報である。
即ち、機器認証サーバ５は、複数のＣＥ機器３の機器認証を行っているため、ＣＥ機器３が機器認証処理の過程で機器認証サーバ５にアクセスしてきた際に、そのアクセスがどのセッションに係属しているか識別する必要がある。
【００６５】
ＣＥ機器３が最初にアクセスしてきた際にセッションＩＤ１を発行し、後に再度ＣＥ機器３が機器認証サーバ５にアクセスしてきた際に、ＣＥ機器３が機器認証サーバ５にセッションＩＤ１を示すようにすれば、機器認証サーバ５は、ＣＥ機器３に対する機器認証処理の続きを行うことができる。
【００６６】
ＣＥ機器３は、機器認証サーバ５からセッションＩＤ１とサーバ乱数Ｒｓを受信して取得する。
そして、ＣＥ機器３は、１２８ビットのクライアント乱数Ｒｃを生成して、記憶すると共に（ステップ１０５）、次の式（６）で表させるトークン１を生成する（ステップ１１０）。クライアント乱数Ｒｃは、ＣＥ機器３に固有な端末固有情報を構成している。
【００６７】
（数６）トークン１＝ＣＢＣ（ＰＰ，ＩＶ，Ｒｓ‖Ｒｃ）…（６）
【００６８】
ここで、パスフレーズＰＰは、トークン１を生成するための共通鍵として使用されている。なお、パスフレーズＰＰと初期値ＩＶは、ＣＥ機器３と機器認証サーバ５で共有されている。
【００６９】
ＣＥ機器３は、機器認証サーバ５から受信したセッションＩＤ１、生成したトークン１、および機器ＩＤを機器認証サーバ５に送信する（暗号化サーバ固有情報送信手段、端末固有情報送信手段）（ステップ１１５）。
機器認証サーバ５は、これらの情報をＣＥ機器３から受信する（暗号化サーバ固有情報受信手段、端末固有情報受信手段、機器ＩＤ受信手段）。まず、機器認証サーバ５は、セッションＩＤ１により、受信したこれらの情報が係属するセッションを識別する。これにより、先に記憶したセッションＩＤ１とサーバ乱数Ｒｓとの組合せから、ＣＥ機器３に対して発行したサーバ乱数Ｒｓを特定することができる。
【００７０】
次に、機器認証サーバ５は、ＣＥ機器３から受信した機器ＩＤにより、ＣＥ機器３を識別し、ＣＥ機器３と共有しているパスフレーズＰＰを特定する（秘密情報特定手段）。そして、機器認証サーバ５は、特定したパスフレーズＰＰと初期値ＩＶを用いて、トークン１を復号し、サーバ乱数Ｒｓとクライアント乱数Ｒｃを取得する。
【００７１】
機器認証サーバ５は、トークン１を復号した結果得られた情報「Ｒｓ‖Ｒｃ」が、サーバ乱数Ｒｓとクライアント乱数Ｒｃを繋げた情報であり、何れも１２８ビットであることを予め知っており、これによって、トークン１を復号した結果得られた情報「Ｒｓ‖Ｒｃ」からサーバ乱数Ｒｓとクライアント乱数Ｒｃを抽出することができる。
【００７２】
なお、以下では、トークン１を復号して抽出したサーバ乱数をＲｓ’と表すことにより、機器認証サーバ５が先に生成したサーバ乱数と区別することにする。
また、後にＣＥ機器３が機器認証サーバ５から送信された情報を復号することにより、
クライアント乱数Ｒｃを取得するが、これもＲｃ’と表すことにし、ＣＥ機器３が生成したクライアント乱数Ｒｃと区別することにする。
【００７３】
次に、機器認証サーバ５は、取得したサーバ乱数Ｒｓ’と、先に生成したサーバ乱数Ｒｓとの同一性を判定する（ステップ１５５）。
両者が一致する場合、ＣＥ機器３がパスフレーズＰＰを保持していることを確認することができ（機器認証手段）、機器認証処理を続行する。
両者が一致しない場合、機器認証サーバ５は、ＣＥ機器３がパスフレーズＰＰを保持していないと判断し、機器認証処理を認証不成立として終了する。
【００７４】
機器認証サーバ５は、サーバ乱数Ｒｓ’とサーバ乱数Ｒｓが一致することを確認した場合、１２８ビットのセッション鍵Ｋ１（セッション鍵）、Ｋ２（第２のセッション鍵）を生成する（ステップ１６０）。このように、機器認証サーバ５は、セッション鍵取得手段と、第２のセッション鍵取得手段を備えている。
これら生成したセッション鍵Ｋ１、Ｋ２は、後に共通鍵として使用されるものである。
【００７５】
後の処理もパスフレーズＰＰを共通鍵として使用することも可能であるが、本実施の形態では、セッション鍵Ｋ１、Ｋ２を共有してこれを使用し、パスフレーズＰＰの使用を極力抑えることにした。
なお、後の処理は、１つの共通鍵を用いて行うことも可能であるが、本実施の形態では、セッション鍵Ｋ１を機器認証に関する情報を暗号化する共通鍵とし、セッション鍵Ｋ２を機器認証情報に付属させるメッセージなどを暗号化する共通鍵とし、用途別に複数の共通鍵を使用することにした。これにより、セキュリティレベルを更に高めることができる。
【００７６】
機器認証サーバ５は、セッション鍵Ｋ１、Ｋ２を生成した後、次の式（７）で表されるトークン２を生成し、ＣＥ機器３に送信する（端末固有情報送信手段）（ステップ１６５）。
【００７７】
（数７）トークン２＝ＣＢＣ（ＰＰ，ＩＶ，Ｒｃ‖Ｒｓ‖Ｋ１‖Ｋ２）…（７）
【００７８】
ＣＥ機器３は、機器認証サーバ５からトークン２を受信し、パスフレーズＰＰと初期値ＩＶを用いてトークン２を復号し、「Ｒｃ‖Ｒｓ‖Ｋ１‖Ｋ２」を取得する。
ＣＥ機器３は、この情報が、それぞれ１２８ビットの情報Ｒｃ’、Ｒｓ’、Ｋ１、Ｋ２がこの順序で繋げられたものであることを知っており、これにより、トークン２を復号した結果からクライアント乱数Ｒｃ’、サーバ乱数Ｒｓ’、セッション鍵Ｋ１、Ｋ２を取得する（セッション鍵取得手段、第２のセッション鍵取得手段）。
【００７９】
次に、ＣＥ機器３は、取得したクライアント乱数Ｒｃ’と先に生成したクライアント乱数Ｒｃの同一性を判定する（ステップ１２０）。
両者が一致する場合、機器認証サーバ５がパスフレーズＰＰを保持していることを確認することができ（サーバ認証手段）、機器認証処理を続行する。
両者が一致しない場合、ＣＥ機器３は、機器認証サーバ５がパスフレーズＰＰを保持していないと判断し、機器認証処理を認証不成立として終了する。
【００８０】
なお、本実施の形態では、セキュリティレベルをより高めるため、サーバ乱数Ｒｓ’と、ステップ１５０で機器認証サーバ５が送信してきたサーバ乱数Ｒｓとの同一性も判定する。
ＣＥ機器３は、クライアント乱数Ｒｃ’とクライアント乱数Ｒｃが一致することを確認した場合、次の式（８）で表されるトークン３を生成する（ステップ１２５）。
【００８１】
（数８）トークン３＝ＭＡＣ（Ｋ２，ＩＶ，接続先ＵＲＬ）…（８）
【００８２】
ここで、接続先ＵＲＬは、サービスサーバ７のサービスサイトのＵＲＬである。
次に、ＣＥ機器３は、セッションＩＤ１、接続先ＵＲＬ、およびトークン３を機器認証サーバ５に送信する（ステップ１３０）。
【００８３】
機器認証サーバ５は、ＣＥ機器３からこれらの情報を取得し、セッション鍵Ｋ２を用いてＭＡＣの検証を行い、接続先ＵＲＬが通信途上で改竄されていないか確認する（ステップ１７０）。
即ち、機器認証サーバ５は、ＣＥ機器３から受信した接続先ＵＲＬをセッション鍵Ｋ２を用いてＡＥＳ１２８−ＣＢＣにて暗号化し、この暗号化情報の最後のブロックとＭＡＣが一致することを以て、接続先ＵＲＬが改竄されていないことを確認する。
【００８４】
次に、機器認証サーバ５は、この接続先ＵＲＬが、予め機器認証サーバ５に登録されているものか否かを確認することにより、接続先ＵＲＬの正当性を判定する（ステップ１７５）。
接続先ＵＲＬが改竄されていた場合、あるいは、接続先ＵＲＬが正当なものでなかった場合、機器認証サーバ５は、認証不成立として機器認証処理を終了する。
【００８５】
接続先ＵＲＬが改竄されていず、かつ接続先ＵＲＬが正当なものであった場合、機器認証サーバ５は、セッションＩＤ２を生成する（ステップ１８０）。
次に、機器認証サーバ５は、機器認証サーバ５に固有なサーバ鍵Ｋｓを用いて次の式（９）で表されるＩＣＶ（Ｉｎｔｅｇｒｉｔｙ  Ｃｈｅｃｋ  Ｖａｌｕｅ：完全性検証値）を生成する（ステップ１８５）。
【００８６】
（数９）ＩＣＶ＝ＥＣＢ（Ｋｓ，セッションＩＤ２）…（９）
【００８７】
セッションＩＤ２とＩＣＶは、後にＣＥ機器３が機器認証サーバ５により機器認証されたことをサービスサーバ７に証明するための証明情報として使用される。
詳細は後述するが、機器認証サーバ５は、サービスサーバ７から機器認証結果の確認のため、セッションＩＤ２とＩＣＶを受信し、このセッションＩＤ２とＩＣＶを復号した結果の同一性を判定する。
なお、セッションＩＤ２は、ＣＥ機器３の機器認証結果を特定する特定情報を構成し、
ＩＣＶは、特定情報をサーバ鍵Ｋｓで暗号化した暗号化特定情報を構成している。また、
ステップ１８０、ステップ１８５のように機器認証サーバ５は、証明情報生成手段を備えている。
【００８８】
機器認証サーバ５は、生成したセッションＩＤ２、ＩＣＶを用いて、次の式（１０）で表される暗号化情報Ｃ、ＭＡＣを生成し（検出情報生成手段）、ＣＥ機器３に送信する（ステップ１９０）。ＭＡＣは、証明情報が通信途中で改変されていないか確認するための検出情報を構成している。
このように暗号化情報Ｃを生成し、更にそのＭＡＣを生成する方式は、Ｅｎｃｒｙｐｔ−ｔｈｅｎ−ＭＡＣ方式と呼ばれることがある。
【００８９】
（数１０）Ｃ＝ＣＢＣ（Ｋ１，ＩＶ，セッションＩＤ２‖ＩＣＶ）…（１０）  （数１１）ＭＡＣ＝ＣＢＣ−ＭＡＣ（Ｋ２，ＩＶ，Ｃ）…（１１）
【００９０】
ＣＥ機器３は、これらの情報を機器認証サーバ５から受信し（証明情報受信手段、検出情報受信手段）、まず、暗号化情報Ｃをセッション鍵Ｋ２および初期値ＩＶを用いて、ＡＥＳ１２８−ＣＢＣにて暗号化する（検出情報生成手段）。
そして、暗号化した情報の最後のブロックと、機器認証サーバ５から受信したＭＡＣの同一性を判定し、ＭＡＣを検証する（確認手段）（ステップ１３５）。
【００９１】
両者が一致する場合、ＣＥ機器３は、暗号化情報Ｃが通信途上で改竄されていないことを確認することができる。
両者が一致しない場合、暗号化情報Ｃが通信途上で改竄されたことが確認でき、機器認証不成立として機器認証処理を終了する。
【００９２】
ＣＥ機器３は、ＭＡＣを用いて暗号化情報Ｃが改竄されていないことを確認した後、暗号化情報Ｃをセッション鍵Ｋ１および初期値ＩＶを用いて復号し、情報「セッションＩＤ２‖ＩＣＶ」を取得する。
ＣＥ機器３は、この情報がセッションＩＤ２とＩＣＶをこの順序で繋げたものであることを知っており、これによって、暗号化情報Ｃを復号した結果得られた情報からセッションＩＤ２とＩＣＶを取得する（ステップ１４０）。
【００９３】
機器認証が成功した場合、ＣＥ機器３は、以上のようにして機器認証サーバ５からセッションＩＤ２とＩＣＶを機器認証結果として取得する。
そして、ＣＥ機器３は、これらの情報をＣＥ機器３が機器認証されたことを証明する証明情報としてサービスサーバ７に送信する（証明情報送信手段）。
【００９４】
次に、ＣＥ機器３からセッションＩＤ２とＩＣＶを受信したサービスサーバ７が、これらの情報を用いて機器認証結果を機器認証サーバ５で確認する機器認証結果確認処理（図３のステップ５５）を行う手順について図５を用いながら説明する。
【００９５】
まず、サービスサーバ７は、ＣＥ機器３からセッションＩＤ２とＩＣＶを受信する（ステップ２００）。
そして、サービスサーバ７は、受信したセッションＩＤ２とＩＣＶを機器認証サーバ５に送信する（ステップ２０５）。
【００９６】
機器認証サーバ５は、サービスサーバ７からこれらの情報を受信し（証明情報受信手段）、サーバ鍵Ｋｓを用いてＩＣＶを復号し、セッションＩＤ２を取得する（暗号化特定情報復号手段）（ステップ２２０）。
機器認証サーバ５は、ＩＣＶをサーバ鍵Ｋｓによって復号した結果とセッションＩＤ２が同一であれば、このセッションＩＤ２は確かに自身が発行したものであることを確認することができる。
【００９７】
次に、機器認証サーバ５は、ＩＣＶを復号することにより得られた結果と、サービスサーバ７から受信したセッションＩＤ２の同一性を判定する（判定手段）（ステップ２２５）。
両者が一致する場合、機器認証結果確認処理を続行し、一致しない場合、機器認証結果確認不成立として処理を終了する。
ここではセッションＩＤ２の同一性判定を暗号化処理により行っているが、ＭＡＣによる検証でもよい。
【００９８】
ＩＣＶと共にセッションＩＤ２を機器認証サーバ５に送信して共に使用するのは、ただ単にＩＣＶからセッションＩＤ２を復号しただけでは、このセッションＩＤ２が、既に発行したセッションＩＤ２のうち、何れであるかわからないためである。
そこで、ＩＣＶと共にセッションＩＤ２を機器認証サーバ５に送信し、ＩＣＶを復号した後の比較対象としてセッションＩＤ２を使用することにしたものである。
【００９９】
次に、機器認証サーバ５は、このセッションＩＤ２で、機器認証処理を行ったセッションを特定してセッションでの機器認証結果を確認し、確かにＣＥ機器３が機器認証サーバ５で機器認証されたことを確認する（機器認証結果特定手段）（ステップ２３０）。
そして、機器認証サーバ５は、サービスサーバ７に確認結果を送信し（ステップ２３５）、サービスサーバ７は、この確認結果を受信する（ステップ２１０）。
【０１００】
以上のように、サービスサーバ７は、ＣＥ機器３から機器認証結果を受信した後、この機器認証結果が正しいものであるのか否かを機器認証サーバ５に問い合わせる。このため、ＣＥ機器３が、機器認証サーバ５になりすました不正者から機器認証を受けたとしても、もしくは、正当なＣＥ機器３ではない何らかの機器が、機器認証サーバ５から機器認証を受けたように見せかけたとしても、この機器認証結果が正当なものでないことを機器認証サーバ５で確認することができる。
【０１０１】
また、ＩＣＶとタイムスタンプを組み合わせることにより、セッションＩＤ２のライフタイムを確認するも可能になる。
即ち、セッションＩＤ２に有効期限を設定しておき、サービスサーバ７が機器認証サーバ５に機器認証結果の確認を取りにきた際に、その機器認証結果が有効期限内に成されたものか否かを確認することができる。
【０１０２】
次に、ＣＥ機器３のハードウェア的な構成について説明する。
図６は、ＣＥ機器３のハードウェア的な構成の一例を示した図である。
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２２に記憶されているプログラム、又は記憶部２８からＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２３にロードされたプログラムに従って各種の処理を実行する。
【０１０３】
ＣＰＵ２１は、例えば、図４、図５で説明したように、機器認証サーバ５やサービスサーバ７との通信を行って機器認証処理に関する情報処理を行うほか、例えば、コンテンツを再生するなどユーザにサービスを提供するための情報処理を行う。
【０１０４】
ＣＰＵ２１、ＲＯＭ２２、およびＲＡＭ２３は、バス２４を介して相互に接続されている。
このバス２４には、入出力インターフェース２５も接続されており、入出力インターフェース２５を介して、入力部２６、出力部２７、記憶部２８、通信部２９、ドライブ３０などがＣＰＵ２１に接続している。
【０１０５】
これら各部に配設される入出力装置は、ＣＥ機器３の製品種（テレビ、ビデオ、ステレオ、…など）によっても異なるが、例えば、入力部２６は、キーボードなどの文字データ入力装置やマウスなどのポインティング装置などが配設され、出力部２７には、ＣＲＴ（Ｃａｔｈｏｄｅ−ｒａｙ  Ｔｕｂｅ）、ＬＣＤ（Ｌｉｑｕｉｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、プラズマディスプレイなどよりなる画像表示装置や、スピーカなどの音声出力装置などが配設されている。
【０１０６】
記憶部２８は、ハードディスクなどの記憶装置から構成され、ＣＰＵ２１が機器認証処理を行うための機器認証プログラムや、コンテンツを再生するコンテンツ再生プログラム、ＣＥ機器３を制御する基本的なプログラムであるＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、機器ＩＤ、パスフレーズなどの機器認証に要するデータなど、各種のプログラムやデータが記憶されている。
【０１０７】
通信部２９は、モデム、ターミナルアダプタなどの通信制御装置から構成され、ネットワークに接続している。
ＣＰＵ２１は、通信部２９を介して機器認証サーバ５やサービスサーバ７、その他のサーバ装置などと通信を行う。
【０１０８】
ドライブ３０には、必要に応じて磁気ディスク４１、光ディスク４２、光磁気ディスク４３、又はメモリカード４４などの記憶媒体が適宜装着される。
ＣＰＵ２１は、ドライブ３０を用いてこれらの記憶媒体を駆動し、プログラムやデータの読み出しや書き込みを行うことができる。
【０１０９】
機器認証サーバ５、サービスサーバ７のハードウェア的な構成は、基本的にＣＥ機器３と同様である。
機器認証サーバ５は、機器認証サイトと認証確認サイトを運営するためのプログラムやデータを記憶した記憶媒体と、これらプログラムを実行するＣＰＵと、ＣＥ機器３やサービスサーバ７と通信を行う通信部などを備えており、サービスサーバ７は、ＣＥ機器３に機器認証を要求し、機器認証結果を機器認証サーバ５で確認するためのプログラムやデータや、ＣＥ機器３に提供するコンテンツなどを記憶した記憶媒体や、プログラムを実行するＣＰＵなどを備えている。
【０１１０】
次に、機器認証に共通鍵（対称鍵）方式を用いた場合と、公開鍵（非対称鍵）方式を用いた場合の計算量について説明する。
公開鍵方式として代表的なものにＲＳＡ（Ｒｉｖｅｓｔ−Ｓｈａｍｉｒ−Ａｄｌｅｍａｎ）暗号方式がある。
【０１１１】
この方式と、本実施の形態で使用したＡＥＳ暗号方式を比較した場合、暗号化については、ＲＳＡ暗号方式の方がＡＥＳ暗号方式より約１００倍の計算量を必要とし、復号については、ＲＳＡ暗号方式の方がＡＥＳ暗号方式より約２５００倍の計算量を必要とする。
他の公開鍵方式の計算量もＲＳＡ暗号方式と同じ程度である。
【０１１２】
このように、共通鍵方式を用いて機器認証を行うことにより、機器認証サーバ５、およびＣＥ機器３の行う計算量を、公開鍵方式を用いた場合より大幅に少なくすることができる。
特に、機器認証サーバ５は、複数のＣＥ機器３からの機器認証要求が集中するため、機器認証に要する計算量を低減することは重要な課題である。
【０１１３】
以上に、説明した本実施の形態により、以下のような効果を得ることができる。
（１）ＣＥ機器３と機器認証サーバ５は、パスフレーズＰＰを共通鍵として用いて相互認証を行うことができる。
（２）相互認証に乗じてセッション鍵Ｋ１、Ｋ２を共有することができ、相互認証後は、
セッション鍵Ｋ１、Ｋ２を共通鍵として通信を行うことができる。このため、パスフレーズＰＰの使用を必要最低限に抑え、セキュリティレベルの向上を図ることができる。
【０１１４】
（３）セッション鍵も、機器認証関係の情報を送受信するためのセッション鍵Ｋ１と、メッセージ類の送受信に用いるセッション鍵Ｋ２の２つを用いるため、よりセキュリティレベルを高めることができる。
（４）公開鍵方式を用いずに、共通鍵方式で機器認証結果であるセッションＩＤ２を発行することができ、その結果機器認証に要する計算量を大幅に低減することができる。
【０１１５】
（５）機器認証サーバ５は、セッションＩＤ２をＥｎｃｒｙｐｔ−ｔｈｅｎ−ＭＡＣ方式により発行するため、通信途中での改竄を検出することができ、セキュリティレベルを向上させることができる。
（６）サーバ鍵Ｋｓの導入により、セッションＩＤ２の正当性の検証が可能となる。
【０１１６】
（変形例）  以上に説明した実施の形態では、機器認証に５つパス（図４のステップ１５０、１１５、１６５、１３０、１９０）を要したが、本変形例では、認証が成立する前に暗号化通信を開始することにより機器認証を３つのパスで行う。
パス数を減らすことにより、機器認証処理を簡略化することができ、効率を高めることができる。
【０１１７】
機器認証システムの構成は、機器認証システム１と同じである。
以下に、図７を用いて機器認証サーバ５がＣＥ機器３を機器認証する手順について説明する。
まず、ＣＥ機器３が、機器認証サーバ５にサーバ乱数Ｒｓの送信を要求する（ステップ３００）。
【０１１８】
これに対し、機器認証サーバ５は、それぞれ１２８ビットのセッションＩＤ１とサーバ乱数Ｒｓを生成し、ＣＥ機器３に送信する（ステップ３４０）。
ＣＥ機器３は、これらの情報を受信して記憶すると共に、それぞれ１２８ビットのクライアント乱数Ｒｃとセッション鍵Ｋ１を生成する（ステップ３０５）。
このように、本変形例では、機器認証サーバ５がＣＥ機器３を機器認証する前にＣＥ機器３がセッション鍵Ｋ１を生成して、セッション鍵Ｋ１を共通鍵とする通信を開始する。
【０１１９】
次に、ＣＥ機器３は、次式で表されるトークン１とトークン２を生成する（ステップ３１０）。
【０１２０】
（数１２）トークン１＝ＣＢＣ（ＰＰ，ＩＶ，Ｒｓ‖Ｒｃ‖Ｋ１）…（１２）  （数１３）トークン２＝ＣＢＣ（Ｋ１，ＩＶ，接続先ＵＲＬ）…（１３）
【０１２１】
次に、ＣＥ機器３は、セッションＩＤ１、機器ＩＤ、トークン１、トークン２を機器認証サーバ５に送信する（ステップ３１５）。
このように、ＣＥ機器３は、トークン１を用いることにより、ＣＥ機器３を機器認証するための情報（サーバ乱数Ｒｓ）と、共通鍵として使用するセッション鍵Ｋ１を同時に機器認証サーバ５に提供することができる。
【０１２２】
機器認証サーバ５は、これらの情報をＣＥ機器３から受信して記憶装置に記憶する。
機器認証サーバ５は、機器ＩＤからＣＥ機器３が記憶しているパスフレーズＰＰを特定し、これを用いてトークン１を復号する。
これにより機器認証サーバ５は、情報「Ｒｓ‖Ｒｃ‖Ｋ１」を取得する。
更に、機器認証サーバ５は、この情報から、サーバ乱数Ｒｓ’、クライアント乱数Ｒｃ’、およびセッション鍵Ｋ１を抽出する。
【０１２３】
次に、機器認証サーバ５は、先に生成したサーバ乱数Ｒｓと、トークン１を復号して取得したサーバ乱数Ｒｓ’の同一性を判定する（ステップ３４５）。
両者が一致する場合、ＣＥ機器３は、パスフレーズＰＰを保持していることになるので、機器認証成立となる。両者が一致しない場合は、機器認証不成立となる。
また、トークン１を復号することにより得られたセッション鍵Ｋ１および予めＣＥ機器３と共有している初期値ＩＶを用いてトークン２を復号することによって接続先ＵＲＬを取得し、これが予め機器認証サーバ５に登録されているものか否かを検証する。
【０１２４】
次に、機器認証サーバ５は、１２８ビットのセッション鍵Ｋ２を生成し（ステップ３５０）、更に次式で表されるトークン３を生成する（ステップ３５５）。
【０１２５】
（数１４）トークン３＝ＣＢＣ（ＰＰ，ＩＶ，Ｒｃ‖Ｒｓ‖Ｋ２）…（１４）
【０１２６】
次に、機器認証サーバ５は、セッションＩＤ２を生成する（ステップ３６０）。
次に、機器認証サーバ５は、サーバ鍵Ｋｓを用いて式（１５）で示したＩＣＶを生成し（ステップ３６５）、更に式（１６）、（１７）で示したトークン４、トークン５を生成して（ステップ３７０）、トークン３、４、５をＣＥ機器３に送信する（ステップ３７５）。
【０１２７】
（数１５）ＩＣＶ＝ＥＣＢ（Ｋｓ，セッションＩＤ２）…（１５）
（数１６）トークン４＝ＣＢＣ（Ｋ１，ＩＶ，セッションＩＤ２‖ＩＣＶ）…（１６）
（数１７）トークン５＝ＣＢＣ−ＭＡＣ（Ｋ２，ＩＶ，トークン４）…（１７）
【０１２８】
ＣＥ機器３は、これらのトークンを受信して記憶する。ＣＥ機器３は、まず、パスフレーズＰＰを用いてトークン３を復号し、クライアント乱数Ｒｃ’、サーバ乱数Ｒｓ’、およびセッション鍵Ｋ２を取得する。
次に、ＣＥ機器３は、先に生成したクライアント乱数Ｒｃとトークン３を復号した結果得られたクライアント乱数Ｒｃ’との同一性を判定する（ステップ３２０）。
【０１２９】
両者が一致する場合、機器認証サーバ５がパスフレーズＰＰを記憶していることが確認でき、認証成立となる。両者が一致しない場合は、認証不成立となる。
更に、ＣＥ機器３は、機器認証サーバ５から受信したサーバ乱数Ｒｓと、トークン３を復号した結果得られたサーバ乱数Ｒｓ’との同一性も判定する。
【０１３０】
次に、ＣＥ機器３は、機器認証サーバ５から受信したトークン４を、初期値ＩＶとトークン３を復号した結果得られたセッション鍵Ｋ２を用いてＡＥＳ１２８−ＣＢＣにて暗号化し、最後のブロックをＭＡＣ（トークン５）と比較し、ＭＡＣの検証を行う（ステップ３２５）。
最後のブロックがＭＡＣと一致する場合、トークン４の正当性が確認でき、一致しない場合は、トークン４が改竄されていることを確認することができる。
【０１３１】
ＣＥ機器３は、トークン４の正当性を確認した後、これを初期値ＩＶとセッション鍵Ｋ１を用いて復号し、セッションＩＤ２とＩＣＶを得る（ステップ３３０）。
ＣＥ機器３がセッションＩＤ２とＩＣＶを取得した後の情報処理は、本実施の形態と同様である。
【０１３２】
以上のように、本変形例では、相互認証が完了する前から、セッション鍵Ｋ１、Ｋ２による暗号化通信を行うことにより、３つのパス（ステップ３４０、３１５、３７５）で機器認証を行うことができる。
【０１３３】
（変形例２）
本変形例では、ＣＥ機器３とサービスサーバ７にセッション鍵を共有させ、ＣＥ機器３とサービスサーバ７でこのセッション鍵を用いた暗号化通信を行わせる。
ＣＥ機器３とサービスサーバ７にセッション鍵を共有させる手順を図８のフローチャートを用いて説明する。
なお、本変形例のシステム構成は、本実施の形態の機器認証システム１（図１）と同じである。
【０１３４】
まず、ＣＥ機器３がサービスサーバ７にアクセスし、サービスの提供を要求する。
これに対し、サービスサーバ７は、機器認証トリガをＣＥ機器３に送信する（ステップ４００）。
【０１３５】
ＣＥ機器３は、サービスサーバ７から機器認証トリガを受信すると、機器認証サーバ５にアクセスする。そして、ＣＥ機器３と機器認証サーバ５との間で機器認証処理が行われる。
そして、機器認証サーバ５は、機器認証によりＣＥ機器３が正当なＣＥ機器であると確認した後、セッション鍵ＫｓｅｓをＣＥ機器３に送信して提供する（ステップ４１５）。
【０１３６】
一方、ＣＥ機器３は、機器認証を終えると、機器認証サーバ５から機器認証結果を受信し、これをサービスサーバ７に送信する（ステップ４２０）。
【０１３７】
サービスサーバ７は、ＣＥ機器３から機器認証結果を受信し、機器認証サーバ５にアクセスする。
そして、サービスサーバ７は、ＣＥ機器３から受信した機器認証結果を機器認証サーバ５に送信し、サービスサーバ７と機器認証サーバ５の間で機器認証結果の確認処理が行われる。
【０１３８】
機器認証サーバ５は、機器認証結果の確認処理により、この機器認証結果が正当なものであると判断すると、サービスサーバ７に、セッション鍵Ｋｓｅｓを送信して提供する（ステップ４０５）。
サービスサーバ７は、機器認証サーバ５からセッション鍵Ｋｓｅｓを受信し、これを用いてＣＥ機器３と暗号化通信を行い、サービスの提供を行う（ステップ４１０）。
【０１３９】
なお、以上の処理で、ステップ４１５によるＣＥ機器３の機器認証は、図３のステップ６５と同様である。
また、ステップ４０５による機器認証結果確認は、図３のステップ５５と同様であり、確認結果の送信（図５、ステップ２３５）と共にセッション鍵Ｋｓｅｓをサービスサーバ７に送信する。
【０１４０】
以上のように、本変形例では、機器認証サーバ５が、ＣＥ機器３とサービスサーバ７にセッション鍵Ｋｓｅｓを提供し、ＣＥ機器３とサービスサーバ７は、これを共通鍵として暗号化通信を行うことができる。
セッション鍵Ｋｓｅｓは、毎回生成されるため、ＣＥ機器３とサービスサーバ７の通信のセキュリティレベルを高めることができる。
【０１４１】
（変形例３）
本変形例では、複数のＣＥ機器にライセンス（パスフレーズなどの秘密情報や有効期限などを含む情報）を共有させ、これらＣＥ機器をライセンスを用いて相互認証させる。
即ち、同じライセンスを与えられた機器同士が相互に機器認証を行う。
【０１４２】
このように、ＣＥ機器間の相互認証を行わせると、相互認証した一方のＣＥ機器をクライアント端末として機能させ、他方のクライアント端末をサーバ装置として機能させることができる。
【０１４３】
例えば、ＣＥ機器ＡとＣＥ機器Ｂが相互認証し、ＣＥ機器ＡがＣＥ機器Ｂからソフトウェアをダウンロードする場合、ＣＥ機器Ａはクライアント端末として機能し、ＣＥ機器Ｂはサーバ装置として機能している。
なお、このようにＣＥ機器間でソフトウェアのダウンロードを行うと、このソフトウェアを送信するサーバ装置へのアクセスを減らすことができ、サーバ装置の負荷低減を実現することができる。
【０１４４】
また、ＣＥ機器にライセンスを共有させることによりグループ化し、このグループに特化したサービスを提供することも可能となる。
例えば、同機種のＣＥ機器にライセンスを共有させ、この機種のＣＥ機器でのみ共有するサービスやコンテンツの提供が可能となる。
【０１４５】
更に、ライセンスをライセンスサーバからオンラインにて動的に発行することにより、ライセンスの更新を容易に行うことができる。
【０１４６】
図９は、本変形例の機器認証システムの構成を模式的に示した図である。
機器認証システム１ａは、ＣＥ機器Ａ、ＣＥ機器Ｂ、機器認証サーバ５、ライセンスサーバ６がネットワークを介して通信可能に接続されている。
なお、図９では、説明を簡略化するためにＣＥ機器をＣＥ機器Ａ、Ｂの２台のみ示してあるが、通常これらは複数台存在する。また、ＣＥ機器Ａ、Ｂを特に区別しない場合は単にＣＥ機器と記すことにする。
【０１４７】
機器認証サーバ５は、ＣＥ機器Ａ、Ｂを機器認証する。機器認証方法は、先に説明した実施の形態と同様である。
機器認証サーバ５は、サービスサーバ（図示せず）に対して、実施の形態と同様に機器認証結果の確認結果を送信するほか、ライセンスサーバ６に対しても機器認証結果の確認結果を送信する。
【０１４８】
更に、機器認証サーバ５は、ライセンスサーバ６に機器認証結果の確認結果を送信する際に、ＣＥ機器の機種情報をライセンスサーバ６に提供する。
このように、機器認証サーバ５がライセンスサーバ６に機種情報を送信するのは、ライセンスサーバ６が機種毎に異なるライセンスをＣＥ機器に提供するためである。
【０１４９】
なお、本変形例では、同機種のＣＥ機器にライセンスを共有させることとするが、これは一例であって、ＣＥ機器の他の属性（例えば、ＣＥ機器のユーザが機器認証システム１ａに登録したユーザレベル）によってライセンスを共有させるように構成することもできる。
この場合、機器認証サーバ５は、ライセンスサーバ６にこの属性を特定する情報を提供する。
【０１５０】
ライセンスサーバ６は、ＣＥ機器が相互認証を行うためのライセンスをＣＥ機器に提供するサーバ装置である。
ライセンスサーバ６は、ＣＥ機器の機種毎のライセンスを記憶したライセンスデータベース６ａを備えており、機器認証サーバ５から受信した機種情報に対応するライセンスをＣＥ機器に送信する。
【０１５１】
ライセンスは、ＣＥ機器が相互認証を行うための秘密情報を含み、更にその他の情報（有効期限、データを暗号化・復号化する暗号鍵など）を含むように構成することができる。
本変形例では、一例として、ＣＥ機器が相互認証を行うための秘密情報として、相互認証用のパスフレーズと、メッセージブロックの初期値ＩＶを用いる。
【０１５２】
ＣＥ機器Ａ、Ｂは、機器認証サーバ５で機器認証を行う機能を有するほか、ライセンスサーバ６から提供されるライセンスを用いて他のＣＥ機器と相互認証を行う機能も有している。
ＣＥ機器Ａ、Ｂを相互認証させることにより、一方をサーバとして機能させ、他方をクライアントとして機能させることができる。
【０１５３】
図１０は、ライセンスサーバ６がＣＥ機器Ａにライセンスを提供する手順を説明するためのフローチャートである。
なお、図１０のフローチャートと図３のフローチャートを比較するとわかるように、ライセンスサーバ６は、図３で説明したサービスサーバ７と同様の手順にてライセンスをＣＥ機器Ａに提供する。
即ち、ライセンスサーバ６は、ライセンスを提供するというサービスをＣＥ機器に提供するサービスサーバということができる。
【０１５４】
以下、図１０のフローチャートについて説明する。
まず、ＣＥ機器Ａがライセンスサーバ６にアクセスし、ライセンスの提供を要求する。  ライセンスの要求は、例えば、ライセンスの有効期限が切れている場合や、ＣＥ機器Ａがまだライセンスを有していない場合に行われる。
ライセンスの要求を受けると、ライセンスサーバ６は、機器認証トリガをＣＥ機器Ａに送信する（ステップ５１）。
【０１５５】
ＣＥ機器Ａは、ライセンスサーバ６から機器認証トリガを受信すると、機器認証サーバ５にアクセスする。そして、ＣＥ機器Ａと機器認証サーバ５との間で機器認証処理が行われる（ステップ６６）。
ＣＥ機器Ａは、機器認証サーバ５から機器認証結果を受信し、これをライセンスサーバ６に送信する（ステップ７１）。
【０１５６】
ライセンスサーバ６は、ＣＥ機器Ａから機器認証結果を受信すると、機器認証サーバ５にアクセスする。
そして、ライセンスサーバ６は、ＣＥ機器Ａから受信した機器認証結果を機器認証サーバ５に送信し、ライセンスサーバ６と機器認証サーバ５の間で機器認証結果の確認処理が行われる。
そして、機器認証サーバ５は、ライセンスサーバ６に機器認証結果の確認結果とＣＥ機器Ａの機種情報をライセンスサーバ６に送信する（ステップ５６）。
【０１５７】
ライセンスサーバ６は、機器認証サーバ５から確認結果と機種情報を受信すると、この機種情報を用いてＣＥ機器Ａのライセンスをライセンスデータベース６ａで検索して取得し、取得したライセンスをＣＥ機器Ａに送信する（ステップ６１）。
【０１５８】
ＣＥ機器Ａは、ライセンスサーバ６からライセンスを受信し、これを記憶する（ステップ７６）。
以上、ＣＥ機器Ａがライセンスサーバ６からライセンスを取得する手順について説明したが、ＣＥ機器Ｂも同様にしてライセンスサーバ６からライセンスを取得する。これによって、ＣＥ機器Ａ、Ｂは、ライセンスを共有することができる。
【０１５９】
次に、ライセンスを共有するＣＥ機器Ａ、Ｂが相互認証を行う手順について図１１のフローチャートを用いて説明する。
なお、以下の手順は、ＣＥ機器ＡがＣＥ機器Ｂにサービスの提供を要求する場合を想定しており（例えば、ソフトウェアのダウンロードなど、ＣＥ機器Ａは、相互認証後にＣＥ機器Ｂからサービスを受ける）、ＣＥ機器Ａは、クライアント端末に対応し、ＣＥ機器Ｂはサーバ装置に対応する。
【０１６０】
まず、ＣＥ機器Ａは、乱数Ｒｓの送信をＣＥ機器Ｂに要求する（ステップ４３０）。
ＣＥ機器Ｂは、この要求を受信して、セッションＩＤと１２８ビットの乱数Ｒｓを生成してＣＥ機器Ａに送信する（ステップ４６０）。ＣＥ機器Ｂは、乱数ＲｓとセッションＩＤとの組合せを記憶しておく。
乱数Ｒｓは、ＣＥ機器Ｂに固有なサーバ固有情報を構成している。
【０１６１】
ＣＥ機器Ａは、ＣＥ機器ＢからセッションＩＤと乱数Ｒｓを受信して記憶し、１２８ビットの乱数Ｒｃとセッション鍵Ｋｓｅｓを生成する（ステップ４３５）。乱数Ｒｃは、ＣＥ機器Ａに固有な端末固有情報を構成している。
次に、ＣＥ機器Ａは、次の式（１８）で表されるトークン１を生成する（ステップ４４０）。
【０１６２】
（数１８）トークン１＝ＣＢＣ（ＰＰ，ＩＶ，Ｒｓ‖Ｒｃ‖Ｋｓｅｓ）…（１８）
【０１６３】
ここで、パスフレーズＰＰと初期値ＩＶは、それぞれライセンスに含まれる相互認証用のパスフレーズとメッセージブロックの初期値である。
【０１６４】
ＣＥ機器Ａは、ＣＥ機器Ｂから受信したセッションＩＤ、及び生成したトークン１をＣＥ機器Ｂに送信する（ステップ４４５）。
ＣＥ機器Ｂは、これらの情報をＣＥ機器Ａから受信する。まず、ＣＥ機器Ｂは、セッションＩＤにより、受信したこれらの情報が係属するセッションを識別する。これにより、先に記憶したセッションＩＤと乱数Ｒｓとの組合せから、ＣＥ機器Ａに対して発行した乱数Ｒｓを特定する。
【０１６５】
次に、ＣＥ機器Ｂは、ライセンスに含まれる相互認証用のパスフレーズＰＰと初期値ＩＶを用いてトークン１を復号し、乱数Ｒｓと乱数Ｒｃを取得する。
ＣＥ機器Ｂは、トークン１を復号した結果得られた情報「Ｒｓ‖Ｒｃ‖Ｋｓｅｓ」が、乱数Ｒｓ、乱数Ｒｃ、及びＫｓｅｓを繋げた情報であることを知っており、それぞれのビット数（１２８ビット）も知っている。これによって、トークン１を復号した結果得られた情報「Ｒｓ‖Ｒｃ‖Ｋｓｅｓ」から乱数Ｒｓ’、乱数Ｒｃ’、及びＫｓｅｓ’を抽出することができる。
【０１６６】
次に、ＣＥ機器Ｂは、取得した乱数Ｒｓ’と、先に生成した乱数Ｒｓとの同一性を判定する（ステップ４６５）。
両者が一致する場合、ＣＥ機器ＡがパスフレーズＰＰを保持していることを確認することができ（機器認証手段）、Ｋｓｅｓ’をＫｓｅｓとして、即ちＣＥ機器Ａが発行した正当なセッション鍵として認識する。
両者が一致しない場合、ＣＥ機器Ｂは、ＣＥ機器ＡがパスフレーズＰＰを保持していないと判断し、機器認証処理を認証不成立として終了する。
【０１６７】
ＣＥ機器Ｂは、乱数Ｒｓ’と乱数Ｒｓが一致することを確認した場合、次の式（１９）で表されるトークン２を生成し、ＣＥ機器Ａに送信する（ステップ４７０）。
【０１６８】
（数１９）トークン２＝ＣＢＣ（ＰＰ，ＩＶ，Ｒｃ‖Ｒｓ）…（１９）
【０１６９】
ＣＥ機器Ａは、ＣＥ機器Ｂからトークン２を受信し、パスフレーズＰＰと初期値ＩＶを用いてトークン２を復号し、「Ｒｃ‖Ｒｓ」を取得する。
【０１７０】
ＣＥ機器Ａは、この情報が、それぞれ１２８ビットの情報Ｒｃ’、Ｒｓ’がこの順序で繋げられたものであることを知っており、これにより、トークン２を復号した結果から乱数Ｒｃ’、乱数Ｒｓ’を取得する。
【０１７１】
次に、ＣＥ機器Ａは、取得した乱数Ｒｃ’と先に生成した乱数Ｒｃの同一性を判定する。
両者が一致する場合、ＣＥ機器ＢがパスフレーズＰＰを保持していることを確認することができ（サーバ認証手段）、機器認証処理を続行する。
【０１７２】
両者が一致しない場合、ＣＥ機器Ａは、ＣＥ機器ＢがパスフレーズＰＰを保持していないと判断し、機器認証処理を認証不成立として終了する。
なお、本実施の形態では、セキュリティレベルをより高めるため、乱数Ｒｓ’と、ステップ４７０でＣＥ機器Ｂが送信してきた乱数Ｒｓとの同一性も判定する（ステップ４５０）。
【０１７３】
ＣＥ機器Ａが乱数Ｒｃ’と乱数Ｒｃ、及び乱数Ｒｓ’と乱数Ｒｓが一致することを確認した後、ＣＥ機器ＡとＣＥ機器Ｂは、セッション鍵Ｋｓｅｓを用いた暗号化通信を開始する（ステップ４７５）。
これによって、ＣＥ機器Ａは、ＣＥ機器Ｂからソフトウェアをダウンロードするなどのサービスを受けることができる。また、逆にＣＥ機器ＢがＣＥ機器Ａからサービスを受けてもよい。
【０１７４】
以上の手順により、ＣＥ機器Ａ、Ｂは、共有するライセンス情報を用いて相互認証を行うことができ、更に、セッション鍵Ｋｓｅｓを共有することができる。
なお、以上の手順では、ＣＥ機器Ａがセッション鍵Ｋｓｅｓを生成してＣＥ機器Ｂに提供したが、これに限定するものではなく、ＣＥ機器Ｂがセッション鍵Ｋｓｅｓを生成してＣＥ機器Ａに提供するように構成することもできる。
【０１７５】
この場合は、ＣＥ機器Ａは、ステップ４３５においてセッション鍵Ｋｓｅｓの生成を行わず、ステップ４４０のトークン１にもセッション鍵Ｋｓｅｓを含めない。
代わりに、ＣＥ機器Ｂがステップ４６５で乱数Ｒｓ’と乱数Ｒｓとの同一性を判定した後、セッション鍵Ｋｓｅｓを生成し、ステップ４７０でトークン２に含めてＣＥ機器Ａに送信する。
そして、ＣＥ機器Ａは、トークン２を復号化してセッション鍵Ｋｓｅｓを取得するように構成する。
【０１７６】
また、図１１のステップ４７０において、次の式（２０）のように、トークン２をＫｓｅｓを含めて生成するように構成することもできる。
【０１７７】
（数２０）トークン２＝ＣＢＣ（ＰＰ，ＩＶ，Ｒｃ‖Ｒｓ‖Ｋｓｅｓ）…（２０）
【０１７８】
このように構成すると、トークン２の情報量が増え、第三者による解読が困難になるなどの利点がある。
【０１７９】
次に、図１２のフローチャートを用いて、ＭＡＣを利用した相互認証の一例を説明する。ＭＡＣを用いることによりセキュリティレベルをより高めることができる。
まず、ＣＥ機器Ａは、乱数Ｒｓの送信をＣＥ機器Ｂに要求する（ステップ５００）。
ＣＥ機器Ｂは、この要求を受信して、セッションＩＤと１２８ビットの乱数Ｒｓを生成してＣＥ機器Ａに送信する（ステップ５４０）。ＣＥ機器Ｂは、乱数ＲｓとセッションＩＤとの組合せを記憶しておく。
【０１８０】
ＣＥ機器Ａは、ＣＥ機器ＢからセッションＩＤと乱数Ｒｓを受信して記憶し、１２８ビットの乱数Ｒｃとセッション鍵Ｋｓｅｓを生成する（ステップ５０３）。
次に、ＣＥ機器Ａは、次の式（２１）で表される暗号化メッセージであるＥｎｃＭｅｓｓ１を生成する（ステップ５０５）。
【０１８１】
（数２１）ＥｎｃＭｅｓｓ１＝ＣＢＣ（ＰＰ，ＩＶ，Ｒｓ‖Ｒｃ‖Ｋｓｅｓ）…（２１）
【０１８２】
次に、ＣＥ機器Ａは、次の式（２２）で表されるＭＡＣ１を生成する（ステップ５１０）。
【０１８３】
（数２２）ＭＡＣ１＝ＨＭＡＣ−ＭＤ５（ＰＰ，ＥｎｃＭｅｓｓ１）…（２２）
【０１８４】
ここで、ＨＭＡＣ−ＭＤ５は、ＭＡＣの一種であって、ハッシュ関数の１つである。
より詳細には、ＭＡＣ１は、パスフレーズＰＰを用いてＥｎｃＭｅｓｓ１をＨＭＡＣ−ＭＤ５にて暗号化したものの最後のブロックである。
次に、ＣＥ機器Ａは、ＥｎｃＭｅｓｓ１とＭＡＣ１をこの順で接続して式（２３）で表されるトークン１を生成し、ＣＥ機器Ｂに送信する（ステップ５１５）。
【０１８５】
（数２３）トークン１＝ＥｎｃＭｅｓｓ１‖ＭＡＣ１…（２３）
【０１８６】
ＣＥ機器Ｂは、ＣＥ機器Ａからトークン１を受信し、これからＥｎｃＭｅｓｓ１とＭＡＣ１を取得する。
次に、ＣＥ機器Ｂは、ＭＡＣ１の検証を行う（ステップ５４５）。即ち、トークン１から抽出したＥｎｃＭｅｓｓ１をパスフレーズＰＰを用いてＨＭＡＣ−ＭＤ５にて暗号化する。そして、暗号化により得られた情報の最後のブロックと、ＭＡＣ１との同一性を判定する。
【０１８７】
ＣＥ機器Ｂは、両者が一致することを確認することにより、ＥｎｃＭｅｓｓ１が正当なものであることを確認することができる。
そのため、両者が一致した場合は、認証処理を続行し、一致しなかった場合は、認証不成立として処理を終了する。
【０１８８】
ＣＥ機器Ｂは、ＭＡＣ１を検証した後、パスフレーズＰＰを用いてＥｎｃＭｅｓｓ１から乱数Ｒｓ’、乱数Ｒｃ’、及びセッション鍵Ｋｓｅｓ’を復号化する。
そして、先にＣＥ機器Ａに送信した乱数Ｒｓと、ＥｎｃＭｅｓｓ１から復号化した乱数Ｒｓ’との同一性を判定する（ステップ５５０）。
【０１８９】
同一であった場合は、ＣＥ機器Ａが相互認証用のパスフレーズＰＰを有することを確認することができ、Ｋｓｅｓ’が正当なＫｓｅｓであることを確認することができる。
同一でなかった場合は、認証不成立として処理を終了する。
【０１９０】
次に、ＣＥ機器Ｂは、次の式（２４）で表される暗号化メッセージであるＥｎｃＭｅｓｓ２を生成する（ステップ５５０）。
【０１９１】
（数２４）ＥｎｃＭｅｓｓ２＝ＣＢＣ（ＰＰ，ＩＶ，Ｒｃ‖Ｒｓ‖Ｋｓｅｓ）…（２４）
【０１９２】
次に、ＣＥ機器Ａは、次の式（２５）で表されるＭＡＣ２を生成する（ステップ５６０）。
【０１９３】
（数２５）ＭＡＣ２＝ＨＭＡＣ−ＭＤ５（ＰＰ，ＥｎｃＭｅｓｓ２）…（２４）
【０１９４】
次に、ＣＥ機器Ｂは、ＥｎｃＭｅｓｓ２とＭＡＣ２をこの順で接続して式（２５）で表されるトークン２を生成し、ＣＥ機器Ａに送信する（ステップ５６５）。
【０１９５】
（数２６）トークン２＝ＥｎｃＭｅｓｓ２‖ＭＡＣ２…（２５）
【０１９６】
ＣＥ機器Ａは、ＣＥ機器Ｂからトークン２を受信し、これからＥｎｃＭｅｓｓ２とＭＡＣ２を取得する。
そして、ＣＥ機器Ａは、ＭＡＣ２の検証を行う（ステップ５２０）。即ち、トークン２から抽出したＥｎｃＭｅｓｓ２をパスフレーズＰＰを用いてＨＭＡＣ−ＭＤ５にて暗号化する。そして、暗号化により得られた情報の最後のブロックと、ＭＡＣ２との同一性を判定する。
【０１９７】
ＣＥ機器Ａは、両者が一致することを確認することにより、ＥｎｃＭｅｓｓ２が正当なものであることを確認することができる。
そのため、両者が一致した場合は、認証処理を続行し、一致しなかった場合は、認証不成立として処理を終了する。
【０１９８】
ＣＥ機器Ａは、ＭＡＣ２を検証した後、パスフレーズＰＰを用いてＥｎｃＭｅｓｓ２から乱数Ｒｃ’、乱数Ｒｓ’、セッション鍵Ｋｓｅｓ’を復号化する。
そして、先にＣＥ機器Ａに送信した乱数Ｒｃ、セッション鍵Ｋｓｅｓと、ＥｎｃＭｅｓｓ２から復号化した乱数Ｒｃ’とセッション鍵Ｋｓｅｓ’の同一性を判定する（ステップ５２５）。
【０１９９】
これら全てが同一であった場合は、ＣＥ機器ＡがパスフレーズＰＰを有することを確認することができる。
このようにして、ＣＥ機器Ａ、Ｂが相互認証した後、ＣＥ機器ＡとＣＥ機器Ｂは、セッション鍵Ｋｓｅｓを用いた暗号化通信を行う（ステップ５７０）。
【０２００】
以上に説明した変形例３により次のような効果を得ることができる。
（１）複数のＣＥ機器にライセンスによる秘密情報を共有させることによりＣＥ機器間でピア・ツー・ピアにより相互認証を行うことができる。
（２）秘密情報を共有するＣＥ機器の範囲を、例えば、同機種などに限定することができ、その範囲に含まれるＣＥ機器で共有することが可能なサービス、コンテンツなどの配信が可能となる。
（３）ライセンスは、ライセンスサーバ６によりオンラインで動的に管理することができる。そのため、ライセンスの更新などを容易に行うことができる。
【産業上の利用可能性】
【０２０１】
ＣＥ機器の機器認証を共通鍵方式により行うことができる。
【図面の簡単な説明】
【０２０２】
【図１】本実施の形態の機器認証システムの構成を模式的に示した図である。
【図２】ＣＥ機器と機器認証サーバが相互認証を行う手順を概念的に説明するためのフローチャートである。
【図３】機器認証を行ってサービスを提供するまでの手順を説明するためのフローチャートである。
【図４】機器認証サーバとＣＥ機器が機器認証処理を行う手順を説明するためのフローチャートである。
【図５】サービスサーバが機器認証サーバで機器認証結果を確認する手順を説明するためのフローチャートである。
【図６】ＣＥ機器のハードウェア的な構成の一例を示した図である。
【図７】変形例による機器認証手順を説明するためのフローチャートである。
【図８】変形例２によるセッション鍵の配布手順を説明するためのフローチャートである。
【図９】変形例３における機器認証システムの構成を模式的に示した図である。
【図１０】変形例３において、サービスサーバがＣＥ機器にライセンスを提供する手順を説明するためのフローチャートである。
【図１１】変形例３において、ＣＥ機器が相互認証を行う手順を説明するためのフローチャートである。
【図１２】変形例３において、ＣＥ機器が相互認証を行う他の手順を説明するためのフローチャートである。
【符号の説明】
【０２０３】
１  機器認証システム
３  ＣＥ機器
５  機器認証サーバ
６  ライセンスサーバ
７  サービスサーバ
【図１】
0004617763.tif 000002
【図２】
0004617763.tif 000003
【図３】
0004617763.tif 000004
【図４】
0004617763.tif 000005
【図５】
0004617763.tif 000006
【図６】
0004617763.tif 000007
【図７】
0004617763.tif 000008
【図８】
0004617763.tif 000009
【図９】
0004617763.tif 000010
【図１０】
0004617763.tif 000011
【図１１】
0004617763.tif 000012
【図１２】
0004617763.tif 000013