図1は、本発明の第一の実施形態である通信システム100の概略図である。
通信システム100は、サーバ110と、送出装置120と、受信端末130と、端末側認証情報管理装置140と、を備える。そして、サーバ110、送出装置120及び受信端末130については、インターネット等の第一のネットワーク160に接続されており、送出装置120及び受信端末130は、ケーブルテレビの放送網等の第二のネットワーク161に接続されている。
図2は、サーバ110の概略図である。
図示するように、サーバ110は、記憶部111と、制御部112と、入力部113と、通信部114と、を備える。
記憶部111は、個別情報記憶領域111aと、同期情報記憶領域111bと、認証情報記憶領域111cと、を備える。
個別情報記憶領域111aには、サーバ110よりサービスの提供を受ける利用者を識別する識別情報(個別ID)と、当該利用者毎に割り振られた個別鍵Kiを特定する情報と、が利用者毎に対応付けられた個別情報が記憶される。
同期情報記憶領域111bには、ある時点毎に異なる値となる同期情報が記憶される。なお、同期情報については、後述する送出装置120から、周期的又はある特定の時点において受信される。
認証情報記憶領域111cには、後述する制御部112において生成された認証情報が記憶される。
制御部112は、全体制御部112aと、同期情報管理部112cと、個別情報管理部112bと、認証コード生成部112dと、認証情報生成部112eと、認証情報管理部112fと、サービス提供部112gと、を備える。
全体制御部112aは、サーバ110で行う処理全般を制御する。
例えば、全体制御部112aは、認証コード生成部112dで生成された暗号化認証コードと、個別情報記憶領域111aに記憶されている個別情報と、を、後述する通信部114を介して後述する送出装置120に送信する処理を行う。
個別情報管理部112bは、個別情報記憶領域111bに記憶する個別情報を管理する。例えば、個別情報管理部112bは、後述する入力部113を介して、個別情報の入力を受け付け、受け付けた個別情報を個別情報記憶領域111aに記憶し、また、個別情報記憶領域111aに既に記憶されている個別情報の修正、削除を受け付け、受け付けた修正、更新を個別情報記憶領域111aに記憶されている個別情報に反映する。
同期情報管理部112cは、後述する送出装置120から、通信部114を介して、周期的又はある特定の時点において受信される同期情報を同期情報記憶領域111bに記憶し、管理する処理を行う。ここで、同期情報は、時刻情報であってもよく、また、同期情報を生成する時点において乱数を生成して、生成した乱数を同期情報としてもよい。
認証コード生成部112dは、認証の安全性を高めるために、認証を行う際の識別情報となる認証コードを生成する。例えば、本実施形態においては、乱数を用いて認証コードを生成するようにしているが、このような態様に限定されるわけではない。
また、認証コード生成部112dは、生成した認証コードを、個別情報に含まれている個別鍵Kiで暗号化した暗号化認証コードを生成して、全体制御部112aから通信部114を介して、後述する送出装置120に送信する。
認証情報生成部112eは、個別情報記憶領域111aに記憶されている個別情報、同期情報記憶領域111bに記憶されている同期情報、および、認証コード生成部112dで生成された認証コード、から認証情報を生成する。
例えば、本実施形態では、個別情報に含まれている個別IDと、同期情報と、認証コードと、を結合し、結合した情報を個別情報に含まれている個別鍵Kiで暗号化して、暗号化した情報に認証コードを合わせて認証情報としているが、このような態様に限定されるわけではない。
認証情報管理部112fは、認証情報生成部112eで生成された認証情報を認証情報記憶領域111cに記憶して管理する。
また、認証情報管理部112fは、後述する受信端末130から送られてくる認証情報が、認証情報記憶領域111cに記憶されている認証情報と一致するか否かを検証する処理を行う。
サービス提供部112gは、認証情報管理部112fで正当性が検証された認証情報を送信してきた受信端末130に対して、予め定められたサービスを提供する。
入力部113は、サーバ110のオペレータより情報の入力を受け付ける。
通信部114は、第一のネットワーク160を介して情報の送受信を行う。
以上に記載したサーバ110は、例えば、図6(コンピュータ170の概略図)に示すような、CPU(Central Processing Unit)171と、メモリ172と、HDD(Hard Disk Drive)等の外部記憶装置173と、CD−ROM(Compact Disk Read Only Memory)、DVD−ROM(Digital Versatile Disk Read Only Memory)、IC(Integrated Circuit)カード等の可搬性を有する記憶媒体174から情報を読み出す読取装置175と、キーボードやマウスなどの入力装置176と、ディスプレイなどの出力装置177と、通信ネットワークに接続するためのNIC(Network Interface Card)等の通信装置178と、を備えた一般的なコンピュータ170で実現できる。
例えば、記憶部111は、CPU171がメモリ172又は外部記憶装置173を利用することにより実現可能であり、制御部112は、外部記憶装置173に記憶されている所定のプログラムをメモリ172にロードしてCPU171で実行することで実現可能であり、入力部113は、CPU171が入力装置178を利用することで実現可能であり、通信部114は、CPU171が通信装置178を利用することで実現可能である。
この所定のプログラムは、読取装置175を介して記憶媒体174から、あるいは、通信装置178を介してネットワークから、外部記憶装置173にダウンロードされ、それから、メモリ172上にロードされてCPU171により実行されるようにしてもよい。また、読取装置175を介して記憶媒体174から、あるいは、通信装置178を介してネットワークから、メモリ172上に直接ロードされ、CPU171により実行されるようにしてもよい。
図3は、送出装置120の概略図である。
図示するように、送出装置120は、記憶部121と、制御部122と、第一の通信部123と、第二の通信部124と、を備える。
記憶部121は、コンテンツ情報記憶領域121aを備える。
コンテンツ情報記憶領域121aは、後述する受信端末130に配信するコンテンツ情報を(一時的に)記憶する。
制御部122は、送出処理部122aと、EMM生成部122bと、同期情報生成部122cと、を備える。
送出処理部122aは、第一の通信部123及び第二の通信部124を介した情報の送受信処理を制御する。特に、後述する同期情報生成部122cで生成された同期情報を第一の通信部123を介して第一のネットワーク160に送信し、コンテンツ情報記憶領域に記憶されているコンテンツ情報及び後述するEMM生成部122bで生成されたEMMを、第二の通信部124を介して第二のネットワーク161に送信する。
EMM生成部122bは、サーバ110より受信した暗号化認証コードと、個別情報の一部と、を共通鍵Kmで暗号化することにより、EMMを生成する。
同期情報生成部122cは、ある時点毎に異なる値となる同期情報を生成する。ここで、本実施形態においては、同期情報の生成時における時刻情報を同期情報とするが、このような態様に限定されず、例えば、同期情報の生成時において乱数を生成し、当該乱数を同期情報とすることも可能である。
第一の通信部123は、第一のネットワーク160を介して情報の送受信を行う。
第二の通信部124は、第二のネットワーク161を介して情報の送受信を行う。
以上のように構成される送出装置120についても、例えば、図6に示すような、一般的なコンピュータ170で実現できる。
例えば、記憶部121は、CPU171がメモリ172又は外部記憶装置173を利用することにより実現可能であり、制御部122は、外部記憶装置173に記憶されている所定のプログラムをメモリ172にロードしてCPU171で実行することで実現可能であり、第一の通信部123及び第二の通信部124は、CPU171が通信装置178を利用することで実現可能である。
図4は、受信端末130の概略図である。
図示するように、受信端末130は、記憶部131と、制御部132と、通信IF部133と、第一の通信部134と、第二の通信部135と、を備える。
記憶部131は、認証情報記憶領域131aを備える。
認証情報記憶領域131aは、後述する端末側認証情報管理装置140で生成され、後述する通信IF部133を介して取得された認証情報が記憶される。
制御部132は、全体制御部132aを備える。
全体制御部132aは、受信端末130における処理全般を制御する。特に、本実施形態では、全体制御部132aは、後述する通信IF部133、第一の通信部134及び第二の通信部135を介して情報を送受信する処理を制御する。また、全体制御部132aは、認証情報記憶領域132aに記憶する認証情報を管理する処理も行う。
さらに、全体制御部132aは、サーバ110より提供されるサービスの実行や、送出装置120より提供されるコンテンツ情報の表示等の処理も制御する。
通信IF部133は、後述する端末側認証情報管理装置140との間で情報を送受信する。ここで、情報の送受信は、接触、非接触の別を問わない。
第一の通信部134は、第一のネットワーク160を介して情報の送受信を行う。
第二の通信部135は、第二のネットワーク161を介して情報の送受信を行う。
以上のように構成される受信端末130についても、例えば、図6に示すような、一般的なコンピュータ170で実現できる。
例えば、記憶部131は、CPU171がメモリ172又は外部記憶装置173を利用することにより実現可能であり、制御部132は、外部記憶装置173に記憶されている所定のプログラムをメモリ172にロードしてCPU171で実行することで実現可能であり、通信IF部133は、CPU171が読取装置175を利用することで実現可能であり、第一の通信部134及び第二の通信部135は、CPU171が通信装置178を利用することで実現可能である。
図5は、端末側認証情報管理装置140の概略図である。
図示するように、端末側認証情報管理装置140は、記憶部141と、制御部142と、通信部143と、を備える。
記憶部141は、個別情報記憶領域141aと、認証コード記憶領域141bと、同期情報記憶領域141cと、を備える。
個別情報記憶領域141aには、サーバ110よりサービスの提供を受ける利用者を識別する識別情報(個別ID)と、当該利用者毎に割り振られた個別鍵Kiを特定する情報と、が記憶される。
認証コード記憶領域141bには、送出装置120から配信されたEMMから取得された認証コードを特定する情報が格納される。
同期情報記憶領域141cには、送出装置120から配信された同期情報が格納される。
制御部142は、全体制御部142aと、認証情報生成部142bと、を備える。
全体制御部142aは、端末側認証情報管理装置140で行う処理全般を制御する。
例えば、本実施形態においては、全体制御部142aは、送出装置120から配信されるEMMを共通鍵Kmで復号化して、取得した情報を記憶部141の個別情報記憶領域141a及び認証コード記憶領域141bに記憶する処理を行う。
また、全体制御部142aは、送出装置120から配信される同期情報を取得して、取得した同期情報を記憶部141の同期情報記憶領域141cに記憶する処理を行う。
認証情報生成部142bは、個別情報記憶領域141aに記憶されている個別情報、認証コード記憶領域141bに記憶されている認証コード、および、同期情報記憶領域141cに記憶されている同期情報、から認証情報を生成する。
例えば、本実施形態では、個別情報に含まれている個別IDと、同期情報と、認証コードと、を結合し、結合した情報を個別情報に含まれている個別鍵Kiで暗号化して、暗号化した情報に認証コードを合わせて認証情報としているが、このような態様に限定されるわけではない。
このようにして生成された認証情報については、全体制御部142aにより後述する通信部143を介して、受信端末130に出力される。
通信部143は、受信端末130との間で情報の送受信を行う。
以上に記載した端末側認証情報管理装置140は、図7(ICカード180の概略図)に示すような、アンテナ181と、ICチップ182と、を備えるICカード180で実現可能である。ここで、ICチップ182は、CPU183と、メモリ184と、を備える。
例えば、記憶部141は、CPU183がメモリ184を利用することにより実現可能であり、制御部142は、CPU183がメモリ184より所定のプログラムを読み込み実行することで実現可能であり、通信部143は、CPU183がアンテナ181を利用することにより実現可能である。
以上のように構成される通信システム100での処理を、図8のフロー図を用いて説明する。
まず、サーバ110の同期情報管理部112cは、通信部114を介して、送出装置120が配信した同期情報を受信し、同期情報記憶領域111bに記憶する(S510)。
また、受信端末130の全体制御部132aも、第一の通信部134を介して、送出装置120が配信した同期情報を受信する(S511)。そして、受信端末130の全体制御部132は、通信IF部133を介して、受信した同期情報を端末側認証情報管理装置140に出力して、端末側認証情報管理装置140の全体制御部142aは、同期情報記憶領域141cに記憶する(S512)。
また、サーバ110の認証コード生成部112dは、乱数を算出して、算出した乱数を認証コードとすることで、認証コードを生成する(S513)。
次に、サーバ110の認証コード生成部112dは、個別情報管理部112bを介して個別情報記憶領域111aから個別鍵Kiを取得し、ステップS513で生成した認証コードを個別鍵Kiで暗号化して、暗号化認証コードを生成する(S514)。
次に、サーバ110の全体制御部112aは、ステップS14で生成した暗号化認証コードと、個別情報記憶領域111aから取得した個別情報の一部(必要な情報)と、を、通信部114を介して送出装置120に出力する(S515)。また、サーバ110認証情報生成部112eは、個別情報記憶領域111aから取得された個別情報に含まれている個別IDと、同期情報管理部112cを介して同期情報記憶領域111bから取得された同期情報と、ステップS513で生成した認証コードと、を結合して、結合した情報を個別情報に含まれている個別鍵Kiで暗号化して、暗号化した情報に認証コードを合わせて認証情報を生成する(S516)。なお、このようにして生成した認証情報については、認証情報管理部112fを介して認証情報記憶領域111cに記憶する。
一方、送出装置120では、受信した情報からEMMを生成して、第二の通信部124を介して、受信端末130に出力し、受信端末130の全体制御部132aは、第二の通信部135を介して、当該EMMを取得する(S517)。
そして、受信端末130の全体制御部132aは、通信IF部133を介して、取得したEMMを端末側認証情報管理装置140に出力し、端末側認証情報管理装置140は、当該EMMの入力を受け付ける(S518)。
次に、端末側認証情報管理装置140の全体制御部132aは、EMMを共通鍵Kmで復号することにより取り出した暗号化認証コードを、個別鍵Kiを用いて復号することで認証コードを取得する(S519)。このようにして取得された認証コードは、認証コード記憶領域141bに記憶される。
そして、端末側認証情報管理装置140の認証情報生成部142bは、個別情報記憶領域141aに記憶されている個別IDと、個別鍵Kiと、同期情報記憶領域141cに記憶されている同期情報と、認証コード記憶領域141bに記憶されている認証コード241と、を使って認証情報を生成し、受信端末130に出力する(S520)。
そして、受信端末130の全体制御部132aは、端末側認証情報管理装置140より入力された認証情報を認証情報記憶領域131aに記憶するとともに、周期的又は予め定められた時に、サーバ110に第一の通信部134を介して出力する(S521)。
次に、サーバ110は、受信端末130から出力された認証情報を受け付けて(S522)、認証情報管理部112fが、認証情報記憶領域111cに記憶されている認証情報と一致するか否かで検証を行う(S523)。
以上のように、本実施形態においては、所定のタイミングで送信することのできる同期情報を用いて認証情報を生成することができるため、EMMの送信間隔よりも短い時間で認証情報を生成し、当該認証情報を検証することができ、短期間のうちに(定期的に)検証を行うことが可能となり、利用者による不正な利用を防止することができる。
図9は、本発明の第二の実施形態である通信システム200の概略図である。
通信システム200は、第一の実施形態である通信システム100を、ケーブルテレビ網に加入している利用者が、ケーブルテレビで放送される広告をもとに他のサービス(ここでは、商品の宅配サービス)を受ける場合を示す。そして、本実施形態では、上述した認証情報をCookieとして利用し、その後SAML(Security Assertion Markup Language)を利用して宅配サービスを提供するサーバが、受信端末であるSTBを認証する場合を示す。
図示するように、通信システム200は、認証サーバ210と、送出装置220と、受信端末であるSTB(Set Top Box)230と、端末側認証情報管理装置であるICカード240と、宅配サーバ250と、を備える。そして、認証サーバ210、送出装置220、STB230及び宅配サーバ250については、インターネット等の第一のネットワーク160に接続されており、送出装置220及びSTB230は、ケーブルテレビの放送網等の第二のネットワーク161に接続されている。
図10は、認証サーバ210の概略図である。
図示するように、サーバ210は、記憶部211と、制御部212と、入力部213と、通信部214と、を備える。
記憶部211は、個別情報記憶領域211aと、同期情報記憶領域211bと、Cookie情報記憶領域211cと、顧客情報記憶領域211dと、認証チケット記憶領域211eと、を備える。
個別情報記憶領域211aには、認証サーバ210よりサービスの提供の認証を受ける利用者に配布されたICカードを識別するための識別情報(カードID)と、当該ICカード毎に割り振られた個別鍵Kmを特定する情報と、が利用者毎に対応付けられた個別情報が記憶される。
同期情報記憶領域211bには、ある時点毎に異なる値となる同期情報が記憶される。なお、同期情報については、後述する送出装置220から、周期的又はある特定の時点において受信される。
ここで、本実施形態においては、同期情報は、時刻情報とする。本実施形態では、5分毎に時刻情報を同期情報として入手する。例えば、2005年10月12日21時15分00秒を同期情報とした場合には、次の同期情報は5分後の2005年10月12日21時20分00秒となる。
Cookie記憶領域211cには、後述する制御部212において生成された認証情報であるCookieが記憶される。
顧客情報記憶領域211dには、認証サーバ210により認証を受けてケーブルテレビの受信サービスの提供を受ける利用者の契約内容を特定する情報が格納される。例えば、本実施形態では、利用者の氏名、生年月日、住所、サービスに対する対価である料金の支払い方法、提供を受けるサービスの内容等が、顧客情報として本領域に記憶される。
認証チケット記憶領域211eには、後述する制御部212の認証チケット管理部212fで生成されたAssertionと、カードIDと、を対応付けた情報が格納される。
制御部212は、全体制御部212aと、同期情報管理部212bと、個別情報管理部212cと、認証コード生成部212dと、Cookie生成部212eと、Cookie管理部212fと、認証チケット管理部212gと、顧客情報管理部212hと、を備える。
全体制御部212aは、認証サーバ210で行う処理全般を制御する。
例えば、全体制御部212aは、認証コード生成部212dで生成された暗号化認証コードと、個別情報記憶領域211aに記憶されている個別情報と、顧客情報記憶領域211dに記憶されている顧客情報の一部(必要な情報)と、を後述する通信部214を介して後述する送出装置220に送信する処理を行う。
個別情報管理部212bは、個別情報記憶領域211bに記憶する個別情報を管理する。例えば、個別情報管理部212bは、後述する入力部213を介して、個別情報の入力を受け付け、受け付けた個別情報を個別情報記憶領域211aに記憶し、また、個別情報記憶領域211aに既に記憶されている個別情報の修正、削除を受け付け、受け付けた修正、更新を個別情報記憶領域211aに記憶されている個別情報に反映する。
同期情報管理部212cは、後述する送出装置220から、通信部214を介して、周期的又はある特定の時点において受信される同期情報を同期情報記憶領域211bに記憶し、管理する処理を行う。
認証コード生成部212dは、認証の安全性を高めるために、認証を行う際の識別情報となる認証コードを生成する。例えば、本実施形態においては、乱数を用いて認証コードを生成するようにしているが、このような態様に限定されるわけではない。
また、認証コード生成部212dは、生成した認証コードを、個別情報に含まれている個別鍵Kmで暗号化した暗号化認証コードを生成して、全体制御部212aから通信部214を介して、後述する送出装置220に送信する。
Cookie生成部212eは、個別情報記憶領域211aに記憶されている個別情報、同期情報記憶領域211bに記憶されている同期情報、および、認証コード生成部212dで生成された認証コード、から認証情報であるCookieを生成する。
例えば、本実施形態では、個別情報に含まれているカードIDと、同期情報と、認証コードと、を結合し、結合した情報を個別情報に含まれている個別鍵Kmで暗号化して、暗号化した情報に認証コードを合わせてCookieを生成しているが、このような態様に限定されるわけではない。
Cookie管理部212fは、Cookie生成部212eで生成されたCookieをCookie記憶領域211cに記憶して管理する。
また、Cookie管理部212fは、後述する受信端末230から送られてくるCookieが、Cookie記憶領域211cに記憶されているCookieと一致するか否かを検証する処理を行う。
認証チケット管理部212gは、後述するSTB230と、宅配サーバ250と、の間のSAMLに関する処理を管理する。なお、具体的な処理方法については後述する。
顧客情報管理部212hは、後述する入力部213を介して、顧客情報の入力、編集を受け付け、顧客情報記憶領域211dに記憶し、管理する。
入力部213は、認証サーバ210のオペレータより情報の入力を受け付ける。
通信部214は、第一のネットワーク160を介して情報の送受信を行う。
以上に記載した認証サーバ210は、例えば、図6(コンピュータ170の概略図)に示すような一般的なコンピュータ170で実現できる。
例えば、記憶部211は、CPU171がメモリ172又は外部記憶装置173を利用することにより実現可能であり、制御部212は、外部記憶装置173に記憶されている所定のプログラムをメモリ172にロードしてCPU171で実行することで実現可能であり、入力部213は、CPU171が入力装置178を利用することで実現可能であり、通信部214は、CPU171が通信装置178を利用することで実現可能である。
この所定のプログラムは、読取装置175を介して記憶媒体174から、あるいは、通信装置178を介してネットワークから、外部記憶装置173にダウンロードされ、それから、メモリ172上にロードされてCPU171により実行されるようにしてもよい。また、読取装置175を介して記憶媒体174から、あるいは、通信装置178を介してネットワークから、メモリ172上に直接ロードされ、CPU171により実行されるようにしてもよい。
図9に戻り、送出装置220は、第一の実施形態における送出装置120と同様の処理を行うため、説明を省略する。なお、本実施形態では、認証サーバより出力される顧客情報の一部(契約内容を特定する情報)についてもEMM内に格納して、後述するSTB230に送信する。
図11は、STB230の概略図である。
図示するように、STB230は、記憶部231と、制御部232と、通信IF部233と、第一の通信部234と、第二の通信部235と、を備える。
記憶部231は、Cookie記憶領域231aを備える。
Cookie記憶領域231aは、後述するICカード240で生成され、後述する通信IF部233を介して取得された認証情報としてのCookieが記憶される。
制御部232は、全体制御部232aを備える。
全体制御部232aは、STB230における処理全般を制御する。特に、本実施形態では、全体制御部232aは、後述する通信IF部233、第一の通信部234及び第二の通信部235で情報を送受信する処理を制御する。また、全体制御部232aは、Cookie記憶領域231aに記憶するCookieを管理する処理も行う。
さらに、全体制御部232aは、宅配サーバ250より提供されるサービスの実行や、送出装置220より提供されるコンテンツ情報の表示等の処理も制御する。
通信IF部233は、後述するICカード240との間で情報を送受信する。ここで、情報の送受信は、接触、非接触の別を問わない。
第一の通信部234は、第一のネットワーク160を介して情報の送受信を行う。
第二の通信部235は、第二のネットワーク161を介して情報の送受信を行う。
以上のように構成されるSTB230についても、例えば、図6に示すような、一般的なコンピュータ170で実現できる。
例えば、記憶部231は、CPU171がメモリ172又は外部記憶装置173を利用することにより実現可能であり、制御部232は、外部記憶装置173に記憶されている所定のプログラムをメモリ172にロードしてCPU171で実行することで実現可能であり、通信IF部233は、CPU171が読取装置175を利用することで実現可能であり、第一の通信部234及び第二の通信部235は、CPU171が通信装置178を利用することで実現可能である。
図12は、ICカード240の概略図である。
図示するように、ICカード240は、記憶部241と、制御部242と、通信部243と、を備える。
記憶部241は、個別情報記憶領域241aと、認証コード記憶領域241bと、同期情報記憶領域241cと、を備える。
個別情報記憶領域241aには、認証サーバ210より認証を受けてサービスの提供を受ける利用者に配布されるICカードを識別する識別情報(カードID)と、当該ICカード毎に割り振られた個別鍵Kmを特定する情報と、が記憶される。
認証コード記憶領域241bには、送出装置220から配信されたEMMから取得された認証コードを特定する情報が格納される。
同期情報記憶領域241cには、送出装置220から配信された同期情報が格納される。
制御部242は、全体制御部242aと、Cookie生成部242bと、を備える。
全体制御部242aは、ICカード240で行う処理全般を制御する。
例えば、本実施形態においては、全体制御部242aは、送出装置220から配信されるEMMを共通鍵Kmで復号化して、取得した情報を記憶部241の個別情報記憶領域241a及び認証コード記憶領域241bに記憶する処理を行う。
また、全体制御部242aは、送出装置220から配信される同期情報を取得して、取得した同期情報を記憶部241の同期情報記憶領域241cに記憶する処理を行う。
Cookie生成部242bは、個別情報記憶領域241aに記憶されている個別情報、認証コード記憶領域141bに記憶されている認証コード、および、同期情報記憶領域141cに記憶されている同期情報、から認証情報としてのCookieを生成する。
例えば、本実施形態では、個別情報に含まれているカードIDと、同期情報と、認証コードと、を結合し、結合した情報を個別情報に含まれている個別鍵Kmで暗号化して、暗号化した情報に認証コードを合わせてCookieとしているが、このような態様に限定されるわけではない。
このようにして生成された認証情報については、全体制御部242aにより後述する通信部243を介して、STB230に出力される。
通信部243は、STB230との間で情報の送受信を行う。
以上に記載したICカード240は、図7に示すようなICカード180で実現可能である。
例えば、記憶部241は、CPU183がメモリ184を利用することにより実現可能であり、制御部242は、CPU183がメモリ184より所定のプログラムを読み込み実行することで実現可能であり、通信部243は、CPU183がアンテナ181を利用することにより実現可能である。
図13は、宅配サーバ250の概略図である。
図示するように、宅配サーバ250は、記憶部251と、制御部252と、通信部253と、を備える。
記憶部251は、認証チケット記憶領域251aを備える。
認証チケット記憶領域251aには、STB230より送信されてきた認証チケットが記憶される。
制御部252は、宅配サービス提供部252aと、認証チケット処理部252bと、を備える。
宅配サービス提供部252aは、STB230に対して、宅配サービスを提供する処理を制御する。
認証チケット処理部252bは、STB230より取得された認証チケットを認証チケット記憶領域251aに記憶するとともに、SAMLを用いてこの認証チケットを利用した処理を行う。
以上のように構成される通信システム200での処理を、以下、フロー図を用いて説明する。
図14は、STB230が、EMMにおいて認証コードを取得して、Cookieを保持する処理を示すフロー図である。
まず、認証サーバ210の同期情報管理部212cは、通信部214を介して、送出装置220が配信した同期情報を受信し、同期情報記憶領域211bに記憶する(S530)。
また、STB230の全体制御部232aも、第一の通信部234を介して、送出装置220が配信した同期情報を受信する(S531)。
なお、送出装置220が配信する同期情報については、例えば、5分毎に時刻情報を同期情報として配信する。
そして、STB230の全体制御部232aは、定期的(例えば、15秒間隔)で、通信IF部233を介して、ICカード240にカード要求確認コマンドを出力し(S532)、ICカード240は、このようなカード要求コマンドを受け付ける(S533)。
次に、ICカード240では、全体制御部242aが、受け付けたカード要求コマンドに含まれる同期情報を入手して同期情報記憶領域241cに記憶する(S534)。
そして、ICカード240の全体制御部242aは、カード要求確認コマンドに対してレスポンスを出力する(S535)。このようなレスポンスを、STB230は、通信IF部233を介して受け付ける(S536)。
次に、認証サーバ210の認証コード生成部212dは、乱数を算出することで、認証コードを生成し(S537)、個別情報管理部212bを介して個別情報記憶領域211aからカードIDと個別鍵Kmを取得して、認証コードを含む情報を契約情報の一部として個別鍵Kmにより暗号化して(S538)、必要な情報とともに送出装置220に出力する(S539)。
そして、送出装置220では、認証サーバ210より必要な情報を取得して、EMMを生成し、第二のネットワーク161を介して、STB230に出力することで、STB230はEMMを取得する(S540)。
STB230の全体制御部232aは、EMM受信コマンドを発行して、ICカード240が受け付ける(S541)。
そして、ICカード240の全体制御部242aは、受け付けたEMMを復号して、認証コードを取得する(S542)。このようにして取得した認証コードは認証コード記憶領域241bに記憶される。
また、ICカード240の全体制御部242aは、EMM受信コマンドのレスポンスをSTB230に返信する(S543)。この際、ICカード240からSTB230への指示としてICカード指示の情報を含ませ、STB230にICカード240にアクセスしてCookieを取得するためのコマンド(ここではCookie取得用コマンドとする)を発行するように指示する。
このようなレスポンスを受け付けたSTB230は(S544)、全体制御部232aが、ICカード指示に従ってCookie取得用コマンドを発行する(S545)。
そして、ICカード240は、Cookie取得用コマンドを受付け(S546)、Cookie生成部242bが、Cookieを生成する(S547)。Cookieの生成方法としては、同期情報記憶領域241cに記憶されている同期情報である時刻情報と、認証コード記憶領域241bに記憶されている認証コードと、を合わせた情報を、個別鍵Kmにより暗号化し、その情報に認証コードを合わせたものをCookieとする。
そして、ICカード240の全体制御部242aが、Cookie取得用コマンドへのレスポンスを返し(S548)、STB230が受け付ける(S549)。このレスポンスには生成したCookieを含み、STB230の全体制御部232aは、Cookieを入手する(S550)。このようにして入手したCookieは、全体制御部232aが、Cookie記憶領域231aに記憶する。
一方、認証サーバ210でも、Cookie生成部212eが、同期情報記憶領域211bに記憶されている同期情報である時刻情報と、認証コード生成部212dが生成した認証コードと、を合わせた情報を、個別鍵Kmにより暗号化し、その情報に認証コードを合わせることによりCookieを生成し、Cookie記憶領域211cに記憶する(S551)。
そして、認証サーバ210の全体制御部212aは、予め定められた時間が経過すると、ステップS637に戻り処理を繰り返す(S552、S553)。
以上が、認証サーバ210より送付された認証コードを用いて、Cookieを生成し、STB230及び認証サーバ210でCookieを保持する場合の動作である。
なお、全体のシステムとして認証コードを利用せずに、時刻情報を個別情報Kmにより暗号化し、その情報に認証コードを合わせたものを認証情報とする場合も考えられる。認証情報の生成に認証コードを利用しない場合は、図14における処理は行わないものとする。
図15は、STB230から認証サーバ210に認証コードの送付を依頼して生成された認証コードを用いて、STB230及び認証サーバ210においてCookieを保持する場合の処理を示すフロー図である。
まず、認証サーバ210の同期情報管理部212cは、通信部214を介して、送出装置220が配信した同期情報を受信し、同期情報記憶領域211bに記憶する(S560)。
また、STB230の全体制御部232aも、第一の通信部234を介して、送出装置220が配信した同期情報を受信する(S561)。
なお、送出装置220が配信する同期情報については、例えば、5分毎に時刻情報を同期情報として配信する。
そして、STB230の全体制御部232aは、定期的(例えば、15秒間隔)で、通信IF部233を介して、ICカード240にカード要求確認コマンドを出力する(S562)。
このようなカード要求コマンドを、通信部243を介して受け付けたICカード240では(S563)、全体制御部242aが、そのコマンドに含まれる同期情報を入手して同期情報記憶領域241cに記憶する(S564)。
そして、ICカード240の全体制御部242aは、カード要求確認コマンドに対してレスポンスを出力する(S565)。このようなレスポンスを、STB230は、通信IF部233を介して受け付ける(S566)。
次に、STB230の全体制御部232aは、利用者の操作やICカード240からの視聴履歴情報を送信するための要求を起因として(ここでは、ICカード240からの視聴履歴情報を送信するための要求を起因として説明するが、このような態様に限定されるわけではない)、ユーザ発呼要求コマンドをICカード240に発行し(S567)、ICカード240はユーザ発呼要求コマンドを受け付ける(S568)。
そして、ICカード240の全体制御部242aは、STB230が認証サーバ210に発呼するようなICカード指示を含めてレスポンスを返す(S569)。
このようなレスポンスを受け付けたSTB230は(S570)、認証サーバ210に発呼する(S571)。
このような発呼を受け付けた認証サーバ210は(S572)、全体制御部212aがSTB230に発呼への応答を返し(S573)、STB230は応答を受け付ける(S574)。
そして、STB230の全体制御部232aは、呼接続状態通知コマンドをICカード240に発行し(S575)、ICカード240は呼接続状態通知コマンドを受け付ける(S576)。
ICカード240の全体制御部242aは、記憶部241に記憶されている視聴履歴情報を、個別情報記憶領域241aに記憶されている個別鍵Kmを用いて暗号化して、STB230に出力する(S577)。
このような情報を受け付けたSTB230の全体制御部232aは、暗号化された情報を認証サーバ210に転送し(S210)、認証サーバ210は、転送されてきた情報を受け付ける(S579)。
認証サーバ210の全体制御部212aは、視聴履歴情報を取得すると、認証コード生成部212dを呼び出し、認証コード生成部212dに認証コードを生成させる(S580)。
そして、認証コード生成部212dは、個別情報記憶領域211aからカードID及び個別鍵Kmを取得し、認証コードを含む情報を契約情報の一部として個別鍵Kmにより暗号化して(S581)、送出装置220に送信する(S582)。
そして、送出装置220がEMMを生成して、STB230に出力することで、STB230は、EMMを取得する(S583)。
次に、STB230の全体制御部232aは、EMM受信コマンドを発行して、ICカード240が受け付ける(S584)。
そして、ICカード240の全体制御部242aは、受け付けたEMMを復号して、認証コードを取得して、認証コードは認証コード記憶領域241bに記憶して、Cookie生成部242bが、Cookieを生成する(S585)。Cookieの生成方法としては、同期情報記憶領域241cに記憶されている同期情報である時刻情報と、認証コード記憶領域241bに記憶されている認証コードと、を合わせた情報を、個別鍵Kmにより暗号化し、その情報に認証コードを合わせたものをCookieとする。
そして、ICカード240の全体制御部242aが、STB230へのレスポンスにCookieを含めて送信し、STB230は、Cookieを入手する(S586)。このようにして入手したCookieは、全体制御部232aが、Cookie記憶領域231aに記憶する。
一方、認証サーバ210でも、Cookie生成部212eが、同期情報記憶領域211bに記憶されている同期情報である時刻情報と、認証コード生成部212dが生成した認証コードと、を合わせた情報を、個別鍵Kmにより暗号化し、その情報に認証コードを合わせることによりCookieを生成し、Cookie記憶領域211cに記憶する(S587)。
以上が、STB230から認証サーバ210に認証コードの送付を依頼して生成された認証コードを用いてCookieを生成して、STB230及び認証サーバ210でCookieを保持する場合の処理である。
なお、全体のシステムとして認証コードを利用せずに、時刻情報を個別鍵Kmにより暗号化し、その情報に認証コードを合わせたものをCookieとする場合も考えられる。このような場合には、図15に示した処理は行わないものとする。
図16は、認証コードによるCookieの更新を行った後、認証コードを入手する間隔よりも短い間隔で同期情報を入手し、同期情報を用いてCookieを更新する動作を示すフロー図である。
まず、認証サーバ210の同期情報管理部212cは、通信部214を介して、送出装置220が配信した同期情報を受信し、同期情報記憶領域211bに記憶する(S590)。
そして、認証サーバ210の全体制御部212aは、前回のCookie生成より予め定めた時間(例えば、本実施形態では5分)を経過したか否かを判断し(S591)、経過している場合には、Cookieを更新する(S592)。ここで、Cookieの更新は、Cookie生成部212eが、同期情報記憶領域211bに記憶されている同期情報である時刻情報と、認証コード生成部212dが生成した認証コードと、を合わせた情報を、個別鍵Kmにより暗号化し、その情報に認証コードを合わせることにより新たなCookieを生成し、Cookie記憶領域211cに記憶することで行う。
また、STB230の全体制御部232aも、第一の通信部234を介して、送出装置220が配信した同期情報を受信する(S593)。
そして、STB230の全体制御部232aは、定期的(例えば、15秒間隔)で、通信IF部233を介して、ICカード240にカード要求確認コマンドを出力し(S594)、ICカード240は、このようなコマンドを受け付ける(S595)。
そして、ICカード240の全体制御部242aは、そのコマンドに含まれる同期情報を入手して同期情報記憶領域241cに記憶する(S596)。
次に、ICカード240の全体制御部242aは、前回Cookieを生成した時から、予め定めた時間(例えば、本実施形態では5分)経過したか否かを判断し(S597)、経過していない場合にはステップS598に進み、経過している場合にはステップS600に進む。
ステップS598では、ICカード240の全体制御部242aは、Cookie取得用コマンドの発行指示を含まないレスポンスをSTB230に出力し、STB230はこのようなレスポンスを受け付け(S599)、ステップS593に戻って処理を繰り返す。
ステップS600では、ICカード240の全体制御部242aは、Cookie取得用コマンドの発行指示を含むレスポンスをSTB230に出力し、STB230はこのようなレスポンスを受け付ける(S601)。
このようなレスポンスを受け付けたSTB230は、全体制御部232aが、ICカード指示に従ってCookie取得用コマンドをICカード240に発行し(S602)、ICカード240は、Cookie取得用コマンドを受け付ける(S603)。
次に、ICカード240のCookie生成部242bが、Cookieを生成する(S604)。Cookieの生成方法としては、同期情報記憶領域241cに記憶されている同期情報である時刻情報と、認証コード記憶領域241bに記憶されている認証コードと、を合わせた情報を、個別鍵Kmにより暗号化し、その情報に認証コードを合わせたものをCookieとする。
そして、ICカード240の全体制御部242aが、Cookie取得用コマンドへのレスポンスを返し(S605)、STB230が受け付ける(S606)。このレスポンスには生成したCookieを含み、STB230の全体制御部232aは、Cookieを入手する(S607)。このようにして入手したCookieは、全体制御部232aが、Cookie記憶領域231aに記憶する。
以上が、認証コードによるCookieの更新を行った後、認証コードを入手する間隔よりも短い間隔で同期情報を入手し、同期情報を用いてCookieを更新する処理である。
図17及び図18は、認証サーバ210がSTB230を認証し、その認証結果を利用して宅配サーバ250がSTB230を認証する場合の処理を示すフロー図である。
なお、本処理の前提として、認証サーバ210及びSTB230がそれぞれ対応するCookieをそれぞれ保存しており、それぞれがネットワークを介して相互に利用することができるものとする。
まず、STB230は、利用者が送出装置120より配信されるケーブルテレビを視聴している最中に、送出装置120より配信される宅配サービスの広告を表示部(図示せず)に出力して表示する(S610)。例えば、宅配サービスの事業者が販売している商品の広告として詳細情報や価格等を表示する。
そして、STB230が、利用者より宅配サービスを受ける旨の指示の入力を受け付けると(S611)、STB230の全体制御部232aは、第一の通信部234を介して宅配サーバ250に接続し(S613)、宅配サーバ250は、STB230からの接続を受け付ける(S613)。
宅配サーバ250の認証チケット処理部252bは、SAMLの規定に従いAuthnRequestを生成し(S614)、認証サーバ210に接続する指示を含むHTTPリダイレクトをSTB230に対して送信し(S615)、STB230は、AuthnRequestを受け付ける(S616)。
そして、STB230の全体制御部232aは、その応答において、AuthnRequestを含んだ内容で認証サーバ210に接続する(S617)。この接続を行う際には、Cookie記憶領域231aに記憶されているCookieを提示する。
認証サーバ210は、STB230からの接続を受け付ける(S618)。
そして、認証サーバ210のCookie管理部212fは、Cookie記憶領域211cに記憶されているCookieと、STB230から提示されたCookieと、を比較し、これらの内容が一致することを確認する(S619)。
次に、認証サーバ210の認証チケット管理部212gが、AuthnRequestを取得し(S620)、ステップS619においてCookieによる認証が成立していることからAssertionおよびそれに対応するArtifactを生成する(S621)。
そして、認証サーバ210の認証チケット管理部212gは、Responseを生成する(S622)。
次に、認証サーバ210の認証チケット管理部212gは、カードIDと生成したAssertionを対応付けて、認証チケット記憶領域211eに記憶しておく(S623)。これは、宅配サーバ250からAssertionによって問合せが行われることを想定し、それに対応するカードID、および更にカードIDに対応する顧客情報を獲得するために保存するものである。
そして、認証サーバ210の認証チケット管理部212gは、Responseを宅配サーバ250へ接続する指示を含むHTTPリダイレクトをSTB230に対して送信し(S624)、STB230はResponseを受け付ける(S625)。
次に、STB230は、宅配サーバ250に接続し(S626)、宅配サーバ250は、STB230からの接続を受け付ける(S627)。
そして、宅配サーバ250の認証チケット処理部252bは、Responseを取得し(S628)、Responseに含まれるArtifactを検証するためArtifactResolveを生成し(S629)、認証サーバ210に送付する(S630)。
次に、認証サーバ210の認証チケット管理部212gは、ArtifactResolveを受付け(S631)、それに対応するAssertionを確認する(S632)。
そして、認証サーバ210の認証チケット管理部212gは、Assertionが確認できたらArtifactResponseを生成し(S633)、生成したArtifactResponseを宅配サーバ250に送付する(S634)。ここで、ArtifacatResponseにはAssertionを含む。
宅配サーバ250の認証チケット処理部252bは、ArtifacatResponseを受付け(S635)、Assertionを取得する(S636)。これでArtifactの検証が完了しSTBを認証したことになる。
次に、宅配サーバ250の宅配サービス提供部252aは、Assertionに含まれる情報や利用者がサービスを利用したことがあればその履歴を使って利用者向けのコンテンツを生成し(S637)、生成したコンテンツをSTB230に送付する(S638)。
STB230はコンテンツを受付け(S639)、表示部を介して利用者に表示する。
利用者はその中から商品を購入するなどの操作を行い、STB230から宅配サーバ250に対して宅配を要求する(S640)。
宅配サーバ250は、宅配要求を受け付ける(S641)。
宅配を行うためには利用者の住所が必要であるので、宅配サーバ250のサービス提要部252aは、Assertionを元に顧客情報を認証サーバ210に対して問合せる(S642)。
認証サーバ210は、顧客情報の問合せを受け付け(S643)、認証サーバ210の顧客情報管理部212hが顧客情報記憶領域211dから顧客情報を入手する(S644)。
次に、認証サーバ210の全体制御部212aは、通信部214を介して顧客情報を宅配サーバ250に送付し(S645)、宅配サーバ250は、顧客情報を受付ける(S646)。
そして、宅配サーバ250の宅配サービス提供部252bは、顧客情報を取得して(S647)、STB230に対してサービスの提供(商品の宅配等)を行う(S648)。
なお、ステップS643〜ステップS648までのやり取りは、インターネットを介して自動的に行われることを想定する。例えば、SOAPにより指示内容と応答を伝えることを想定する。
以上が、認証サーバ210が、Cookieを利用してSTB230を認証し、さらにその認証結果を利用して宅配サーバ250がSTB230を認証する場合の動作である。
次に、本発明の第三の実施形態である通信システムについて述べる。
本発明の第三の実施形態においては、第一の実施形態で説明した認証情報をSAMLにおけるArtifactと同等のものとして利用し、宅配サーバがSTB330(図20参照)を認証する場合を示す。
第三の実施形態における通信システムは、第二の実施形態における通信システム200と比較して、Cookieの代わりに認証チケットを利用しており、主に、認証サーバと、STBと、が異なっているため、以下これらについて説明する。
図19は、認証サーバ310の概略図である。
図示するように、認証サーバ310は、記憶部311と、制御部312と、入力部313と、通信部314と、を備える。
記憶部311は、個別情報記憶領域311aと、同期情報記憶領域311bと、顧客情報記憶領域311dと、認証チケット記憶領域311eと、を備え、第二の実施形態と比較して、Cookie記憶領域が設けられていない。
制御部312は、全体制御部312aと、同期情報管理部312bと、個別情報管理部312cと、認証コード生成部312dと、認証チケット管理部312gと、顧客情報管理部312hと、を備え、第二の実施形態と比較して、Cookie生成部及びCookie管理部が設けられていない。
図20は、STB330の概略図である。
図示するように、STB330は、記憶部331と、制御部332と、通信IF部333と、第一の通信部334と、第二の通信部335と、を備える。
ここで、STB330は、第二の実施形態におけるSTB230と比較して、記憶部331に、認証チケットを記憶する認証チケット記憶領域331aが設けられている点で異なっている。
以下、第三の実施形態である通信システムでの処理をフロー図を用いて説明する。
図21は、STB330が認証チケットを宅配サーバ250に提示し、認証チケットを検証して宅配サーバ250がSTB330を認証する場合の処理を示すフロー図である。
ここで、図21の処理では、前提として、認証サーバ310の認証チケット記憶領域311e及びSTB330の認証チケット記憶領域331aには、認証チケットが記憶されており、ネットワークを介して相互に利用することができるようにされているものとする。
まず、STB330は、利用者が送出装置120より配信されるケーブルテレビを視聴している最中に、送出装置220より配信される宅配サービスの広告を表示部(図示せず)に出力して表示する(S650)。例えば、宅配サービスの事業者が販売している商品の広告として詳細情報や価格等を表示する。
そして、STB330が、利用者より宅配サービスを受ける旨の指示の入力を受け付けると(S651)、STB330の全体制御部332aは、第一の通信部334を介して宅配サーバ250に接続し(S653)、宅配サーバ250は、STB330からの接続を受け付ける(S653)。このとき、STB330は、接続要求に認証チケット記憶領域331aに記憶されている認証チケットを添付することで、認証チケットを宅配サーバ250に提示する。
次に、宅配サーバ250の認証チケット処理部252bは、接続要求に添付されている認証チケットを取得し(S654)、認証チケットの検証を行うために、認証チケットをSAMLのArtifactに見立てて、ArtifactResolveを生成し(S655)、認証サーバ310に送付する(S656)。
次に、認証サーバ310の認証チケット管理部312gは、ArtifactResolveを受付け(S657)、認証チケット記憶領域311eに記憶されている認証チケットと合致するかを確認する(S658)。
そして、認証サーバ310の認証チケット管理部312gは、ステップS658で認証チケットが合致すると判断した場合には、認証チケットに対応するAssertionを生成して(S659)、カードIDと、生成したAssertionと、を対応付けて認証チケット記憶領域311eに記憶しておく(S660)。
そして、認証サーバ310の認証チケット管理部312gは、ArtifactResponseを生成し(S661)、生成したArtifactResponseを宅配サーバ250に送付する(S662)。ここで、ArtifacatResponseにはAssertionを含む。
宅配サーバ250の認証チケット処理部252bは、ArtifacatResponseを受付け(S663)、Assertionを取得する(S664)。これでArtifactの検証が完了しSTB330を認証したことになる。
次に、宅配サーバ250の宅配サービス提供部252aは、Assertionに含まれる情報や利用者がサービスを利用したことがあればその履歴を使って利用者向けのコンテンツを生成し(S665)、生成したコンテンツをSTB330に送付する(S666)。
STB330はコンテンツを受付け(S667)、表示部を介して利用者に表示する。
後の処理については、第二の実施形態において説明した図18におけるステップS640〜ステップS648と同様である。
以上が、STB330が認証チケットを宅配サーバ250に提示し、認証チケットを検証して宅配サーバ250がSTB330を認証する場合の動作である。
以上に記載した実施形態においては、送出装置120、220で同期情報を配信するようにしているが、このような態様に限定されず、例えば、第一のネットワーク160に同期情報を送出するための他の装置[例えば、NTP(Network Time Protocol)サーバ]を接続し、当該他の装置から同期情報を配信するようにしてもよい。