(57)【要約】コード要求の送信先となる管理装置が有する第二の鍵データに対応する第一の鍵データを用いて、コード要求に電子サインを付加する付加手段と、前記付加手段によって生成された電子サインを含むコード要求を送信する送信手段と、マルチキャストされる暗号化されたデータ及び前記コード要求に応じて送信されるコード応答を受信する受信手段と、前記受信手段によって受信された前記コード応答に含まれる復号化コードであって、第三の鍵データによって暗号化された復号化コードを、前記第三の鍵データに対応する第四の鍵データを用いて復号化し取得する取得手段と、前記取得手段によって取得された復号化コードを用いて、前記受信手段によって受信される暗号化されたデータを復号化し出力手段に渡す復号化手段と、を備える。
2004075475.tif 000002
【特許請求の範囲】
【請求項１】
第一の鍵データによって生成された電子サインを含むコード要求を受信する受信手段と、
前記第一の鍵データに対応する第二の鍵データ及び前記電子サインを用いて、前記コード要求の送信元を認証する認証手段と、
前記認証手段によって前記送信元が認証された場合に、復号化コードを含むデータであって、少なくとも前記復号化コードが第三の鍵データによって暗号化されたコード応答を、前記送信元に返信する返信手段と、
前記復号化コードに対応する暗号化コードを用いて、マルチキャストされるコンテンツのデータを暗号化する暗号化手段と、
前記暗号化手段によって暗号化されたデータをマルチキャストする配信手段と、
を備える管理装置と、
前記第一の鍵データを用いて、コード要求に電子サインを付加する付加手段と、
前記付加手段によって生成された電子サインを含むコード要求を送信する送信手段と、
前記管理装置によってマルチキャストされる暗号化されたデータ及び前記管理装置によって送信されるコード応答を受信する受信手段と、
前記受信手段によって受信された前記コード応答に含まれる復号化コードを、前記第三の鍵データに対応する第四の鍵データを用いて復号化し取得する取得手段と、
前記取得手段によって取得された復号化コードを用いて、前記受信手段によって受信される暗号化されたデータを復号化し出力手段に渡す復号化手段と、
を備える受信装置と
を含む配信システム。
【請求項２】
第一の鍵データによって生成された電子サインを含むコード要求を受信する受信手段と、
前記第一の鍵データに対応する第二の鍵データ及び前記電子サインを用いて、前記コード要求の送信元を認証する認証手段と、
前記認証手段によって前記送信元が認証された場合に、復号化コードを含むデータであって、少なくとも前記復号化コードが第三の鍵データによって暗号化されたコード応答を、前記送信元に返信する返信手段と、
を備える管理装置と、
前記復号化コードに対応する暗号化コードを用いて、マルチキャストされるコンテンツのデータを暗号化する暗号化手段と、
前記暗号化手段によって暗号化されたデータをマルチキャストする配信手段と、
を備える配信装置と、
前記第一の鍵データを用いて、コード要求に電子サインを付加する付加手段と、
前記付加手段によって生成された電子サインを含むコード要求を送信する送信手段と、
前記配信装置によってマルチキャストされる暗号化されたデータ及び前記管理装置によって送信されるコード応答を受信する受信手段と、
前記受信手段によって受信された前記コード応答に含まれる復号化コードを、前記第三の鍵データに対応する第四の鍵データを用いて復号化し取得する取得手段と、
前記取得手段によって取得された復号化コードを用いて、前記受信手段によって受信される暗号化されたデータを復号化し出力手段に渡す復号化手段と、
を備える受信装置と
を含む配信システム。
【請求項３】
前記第一の鍵データ及び第四の鍵データは前記付加手段及び前記取得手段によってのみ参照可能に構成される
請求の範囲１又は２に記載の配信システム。
【請求項４】
前記付加手段と取得手段と復号化手段とは、受信装置によってプログラムが実行されることにより受信装置上に実現される手段であり、
前記プログラムを、ネットワークを介して前記受信装置がダウンロード可能な状態に公開する公開装置をさらに含む請求の範囲２に記載の配信システム。
【請求項５】
前記第一の鍵データと前記第四の鍵データとは同一の鍵データを用いて構成され、前記第二の鍵データと前記第三の鍵データとは同一の鍵データを用いて構成される請求の範囲１〜４のいずれかに記載の配信システム。
【請求項６】
前記管理装置は、
前記第一の鍵データ及び前記第二の鍵データを新たに生成する鍵生成手段と、
前記鍵生成手段によって生成された第一の鍵データを前記受信装置に送信する鍵送信手段と
をさらに備え、
前記認証手段は、前記鍵生成手段が第二の鍵データを新たに生成した以後は、新たに生成された第二の鍵データを用いる
請求の範囲１〜５のいずれかに記載の配信システム。
【請求項７】
前記受信装置の前記付加手段は、前記管理装置から新たな第一の鍵データが受信された以後は受信された新たな第一の鍵データを用いる請求の範囲６に記載の配信システム。
【請求項８】
前記受信装置の前記付加手段は、前記コード要求に、自装置のユーザを識別するための識別データをさらに付加する請求の範囲１〜７のいずれかに記載の配信システム。
【請求項９】
前記付加手段と取得手段と復号化手段とは、受信装置によってプログラムが実行されることにより受信装置上に実現される手段であり、
前記管理装置は、前記プログラムを、ネットワークを介して前記受信装置がダウンロード可能な状態に公開する公開手段をさらに備える請求の範囲１に記載の配信システム。
【請求項１０】
第一の鍵データによって生成された電子サインを含むコード要求を受信する受信手段と、
前記第一の鍵データに対応する第二の鍵データ及び前記電子サインを用いて、前記コード要求の送信元を認証する認証手段と、
前記認証手段によって前記送信元が認証された場合に、復号化コードを含むデータであって、少なくとも前記復号化コードが第三の鍵データによって暗号化されたコード応答を、前記送信元に返信する返信手段と、
前記復号化コードに対応する暗号化コードを用いて、マルチキャストされるコンテンツのデータを暗号化する暗号化手段と、
前記暗号化手段によって暗号化されたデータをマルチキャストする配信手段と、
を備える管理装置。
【請求項１１】
コード要求の送信先となる管理装置が有する第二の鍵データに対応する第一の鍵データを用いて、コード要求に電子サインを付加する付加手段と、
前記付加手段によって生成された電子サインを含むコード要求を送信する送信手段と、
マルチキャストされる暗号化されたデータ及び前記コード要求に応じて送信されるコード応答を受信する受信手段と、
前記受信手段によって受信された前記コード応答に含まれる復号化コードであって、第三の鍵データによって暗号化された復号化コードを、前記第三の鍵データに対応する第四の鍵データを用いて復号化し取得する取得手段と、
前記取得手段によって取得された復号化コードを用いて、前記受信手段によって受信される暗号化されたデータを復号化し出力手段に渡す復号化手段と、
を備える受信装置。
【請求項１２】
前記第一の鍵データ及び第四の鍵データは前記付加手段及び前記取得手段によってのみ参照可能に構成される
請求の範囲１１に記載の受信装置。
【請求項１３】
コード要求の送信先となる管理装置が有する第二の鍵データに対応する第一の鍵データを用いて、コード要求に電子サインを付加するステップと、
前記電子サインが付加されたコード要求を送信するステップと、
前記コード要求に応じて送信されたコード応答を受信するステップと、
受信された前記コード応答に含まれる復号化コードであって、第三の鍵データによって暗号化された復号化コードを、前記第三の鍵データに対応する第四の鍵データを用いて復号化し取得するステップと、
マルチキャストされる暗号化されたデータを受信するステップと、
取得された前記復号化コードを用いて、受信される前記暗号化されたデータを復号化し出力手段に渡すステップと、
を情報処理装置に実行させるプログラムであって、
前記第一の鍵データと前記第四の鍵データと前記復号化コードとは、前記情報処理装置のユーザ及び前記情報処理装置によって実行される他のプログラムによって参照されないように構成されるプログラム。
【請求項１４】
前記第一の鍵データと前記第四の鍵データとを含む請求の範囲１３に記載のプログラム。
【請求項１５】
前記第一の鍵データと前記第四の鍵データとは同一の鍵データを用いて構成され、前記第二の鍵データと前記第三の鍵データとは同一の鍵データを用いて構成される請求の範囲１３又は１４に記載のプログラム。
【発明の詳細な説明】
【技術分野】  本発明は、ネットワークを介して暗号化されたデータを送受信することによりコンテンツを配信するシステムに関する。
【背景技術】  有料放送を行うシステムでは、ユーザによる不正視聴を防止するめの対策が講じられている。従来、有料放送を行う局（以下、有料放送局と呼ぶ）は、視聴者に対して、各局について専用の受信機器を購入させている。視聴者は、購入された受信機器を用いることによって、各局の有料放送を視聴することができる。例えば、スクランブルコードがかけられたデータが局によって送信され、受信機器に備えられたスクランブル鍵によってのみスクランブルコードが解除され、視聴可能になる。視聴者は、受信機器の購入の際に有料放送を行う局との間に、視聴料の支払いについての契約などを行う。このようにして、ユーザによる不正視聴が防止されていた。
しかし、このようなシステムにはいくつかの問題があった。第一に、ユーザは、視聴の開始前に受信機器を購入する必要が生じるため、初期導入費用が多大となっていた。このような多大な初期導入費用は、ユーザにとって、有料放送の視聴を開始する上での敷居を高くする原因となっていた。
また、従来の受信機器は各局についての専用機であるため、ユーザは、放送局毎に受信機器を購入する必要があった。即ち、ユーザは、自身が視聴している局とは異なる局（他の放送局）の放送を視聴する場合、新たな受信機器を購入する必要があった。このことは、ユーザにとって、他の放送局の有料放送の視聴を開始する上での敷居を高くする原因となっていた。
また、受信機器の入れ替えを行う場合、全ての視聴者について入れ替えを行う必要があり、多大な手間とコストとを要する。このため、同じ受信システムが変更されることなく、長期にわたって運用されていた。従って、運用の長期経過に伴って、不正視聴者によるスクランブル鍵の不正入手が容易となるという問題があった。
このような問題に対し、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）上で有料放送を行うシステムがある。例えば、インターネットにより有料放送を行うシステムがある。このようなシステムでは、ユニキャスト（Ｕｎｉｃａｓｔ）によって専用の仮想的な通信路が設定され、ＩＰＳＥＣ（ＩＰ  Ｓｅｃｕｒｉｔｙ）等の一般的な暗号化技術が用いられることにより、不正視聴が防止されている。このため、ユーザは、各局について専用の受信機器を購入する必要がなく、ネットワークに接続されたパソコンによって視聴することが可能となる。また、スクランブル鍵などのデータを容易に変更することが可能となり、不正視聴者による鍵の入手が困難となる。
また、従来の技術として以下のようなものもある。第一に、放送会社から、通常放送と共に、データ放送で放送会社が指定する加入契約、認証手続き不要の特定の無料プロバイダのアクセスポイントの情報を放送し、双方向通信選択時に、視聴者が、プロバイダに加入しているか否かを問わず、無料プロバイダに通信回線を接続して、インターネットにアクセスする技術がある（特許文献１を参照）。
また、第二に、放送局、データベース、受信装置、データ通信装置及びユーザ端末装置から構成され、暗号鍵方式としては秘密鍵方式、公開鍵方式、デジタル署名方式が用いられこれらの鍵は暗号化されあるいは暗号化されないで放送によって供給されるシステムがある（特許文献２を参照）。
【特許文献１】        特開２０００−１３５２４号公報
【特許文献２】        特開平８−２８８９４０号公報
しかしながら、ＩＰ上で有料放送を行う従来のシステムには、以下のような問題点があった。ＩＰ上での有料放送は、不正視聴を防止するためにユニキャストを用いているため、放送局のサーバや経路上の中継装置における処理が増大していた。このため、放送局のサーバや経路上の中継装置の能力に応じて、同時視聴者数が制限されていた。
【発明の開示】
本発明では、このような問題を解決し、不正視聴を防止すると同時に、放送局のサーバや経路上の中継装置における処理負担を軽減するシステムや装置を提供することを目的とする。
〔第一の態様〕
上記問題を解決するため、本発明は以下のような構成をとる。本発明の第一の態様は、管理装置と受信装置とを含む配信システムである。
第一の態様における管理装置は、第一の鍵データによって生成された電子サインを含むコード要求を受信する受信手段と、前記第一の鍵データに対応する第二の鍵データ及び前記電子サインを用いて前記コード要求の送信元を認証する認証手段と、前記認証手段によって前記送信元が認証された場合に、復号化コードを含むデータであって、少なくとも前記復号化コードが第三の鍵データによって暗号化されたコード応答を、前記送信元に返信する返信手段と、前記復号化コードに対応する暗号化コードを用いて、マルチキャストされるコンテンツのデータを暗号化する暗号化手段と、前記暗号化手段によって暗号化されたデータをマルチキャストする配信手段と、を備える。
第一の態様における受信装置は、前記第一の鍵データを用いてコード要求に電子サインを付加する付加手段と、前記付加手段によって生成された電子サインを含むコード要求を送信する送信手段と、前記管理装置によってマルチキャストされる暗号化されたデータ及び前記管理装置によって送信されるコード応答を受信する受信手段と、前記受信手段によって受信された前記コード応答に含まれる復号化コードを、前記第三の鍵データに対応する第四の鍵データを用いて復号化し取得する取得手段と、前記取得手段によって取得された復号化コードを用いて、前記受信手段によって受信される暗号化されたデータを復号化し出力手段に渡す復号化手段と、を備える。
第一の鍵データと第二の鍵データとは、第一の鍵データによって生成された電子サインを第二の鍵データによって認証することが可能で有ればどのように構成されても良い。例えば、第一の鍵データと第二の鍵データとは、公開鍵方式に従って生成された公開鍵と秘密鍵を用いて構成されても良い。また、例えば、第一の鍵データと第二の鍵データとは、同じ秘密鍵を用いて構成されても良い。ただし、第二の鍵データが公開鍵を用いて構成される場合、コード要求の送信元となる装置（例えば受信装置）のユーザが、第二の鍵データを用いてコード要求を復号化することにより、送信されるコード要求の内容を確認することが可能となる。第二の鍵データが公開鍵を用いて構成される場合は、このようにユーザに対して第二の鍵データを公開した場合であっても、認証手段における認証作業に影響を及ぼさない。
また、第一の鍵データと第四の鍵データとは同じ鍵データを用いて構成されても良い。この場合、第二の鍵データと第三の鍵データとは同じ鍵データを用いて構成される。このように構成されることにより、使用される鍵データの数を削減することが可能となる。従って、鍵データの管理が容易となる。
また、第一の鍵データ及び第四の鍵データは付加手段及び前記取得手段によってのみ参照可能に構成されても良い。このように構成されることにより、受信装置のユーザが第一の鍵データ及び第四の鍵データを取得し、この鍵データを不正に使用することを防止できる。
本発明の第一の態様では、受信装置の付加手段が第一の鍵データを用いてコード要求に電子サインを付加し、このコード要求を送信手段が管理装置宛に送信する。
管理装置の受信手段がこのコード要求を受信すると、認証手段がこのコード要求に含まれる電子サインと第二の鍵データとを用いてコード要求の送信元（例えば受信装置）について認証する。送信元が認証された場合、返信手段は、第三の鍵データによって暗号化された復号化コードを含むコード応答を、認証された送信元へ返信する。この際、コード応答は、コード応答全体が第三の鍵データによって暗号化されるように構成されても良い。
受信装置の受信手段がこのコード応答を受信すると、取得手段は、このコード応答に含まれる復号化コードを、第四の鍵データを用いて復号化し取得する。
管理装置の暗号化手段は、暗号化コードを用いて、マルチキャストされるコンテンツのデータを暗号化する。この暗号化コードは、返信手段によって返信されたコード応答に含まれる復号化コードに対応する。即ち、この暗号化コードによって暗号化されたデータは、この復号化コードによって復号化可能である。配信手段は、暗号化手段によって暗号化されたデータをマルチキャストする。
受信装置の受信手段がこのデータを受信すると、復号化手段はこのデータを復号化する。この際、復号化手段は、取得手段によって取得された復号化コードを使用して、受信されたデータを復号化する。そして、復号化手段は、復号化されたデータ（平文データ）を出力手段に渡す。
本発明の第一の態様によれば、管理装置によってマルチキャストされるデータ、即ち配信されるデータは、暗号化コードによって暗号化される。そして、このデータを復号化するための復号化コードは、第一の鍵データ及び第二の鍵データによって認証された受信装置に対して送信される。さらに、この復号化コードは、第三の鍵データ及び第四の鍵データによる暗号化通信を用いて送受信される。従って、第一の鍵データ及び第四の鍵データが漏洩しない限り、配信されるデータの不正取得を防止することが可能となる。このため、配信されるデータは、ユニキャスト送信によって管理装置から受信装置へ送信されることなく、その不正取得を防止することが可能となる。従って、例えば、配信されるデータが映像データ等のコンテンツデータである場合、本発明の第一の態様によれば、不正視聴を防止することが可能となる。
また、配信されるデータはマルチキャストで送信される。このため、従来のユニキャストでの送信とは異なり、データ送信元となる装置（管理装置）や経路上の中継装置における処理負担を軽減することが可能となる。
また、本発明の第一の態様の管理装置は、第一の鍵データ及び第二の鍵データを新たに生成する鍵生成手段と、鍵生成手段によって生成された第一の鍵データを受信装置に送信する鍵送信手段とをさらに備えるように構成されても良い。この場合、認証手段は、鍵生成手段が第二の鍵データを新たに生成した以後は、新たに生成された第二の鍵データを用いて認証を行う。また、この場合、受信装置の付加手段は、管理装置から新たな第一の鍵データが受信された以後は、受信された新たな第一の鍵データを用いて電子サインの付加を行う。このように構成されることにより、第一の鍵データ及び第二の鍵データを更新し、第一の鍵データ及び第二の鍵データの漏洩を防止することが可能となる。
同様に、本発明の第一の態様は、第三の鍵データ及び第四の鍵データとを更新するように構成されても良い。この場合は、鍵生成手段はさらに第三の鍵データ及び第四の鍵データを生成する。鍵送信手段は、さらに鍵生成手段によって生成された第四の鍵データを受信装置に送信する。認証手段は、鍵生成手段が第三の鍵データを新たに生成した以後は、新たに生成された第三の鍵データを用いて認証を行う。そして、受信装置の取得手段は、管理装置から新たな第四の鍵データが受信された以後は、受信された新たな第四の鍵データを用いて復号化コードを取得する。
また、本発明の第一の態様の受信装置の付加手段は、コード要求に、自装置のユーザを識別するための識別データをさらに付加するように構成されても良い。このような識別データの例として、ユーザのクレジットカードの番号や、ユーザが独自に使用する鍵データによる電子サイン等がある。管理装置の管理者，運営者などは、この識別データを用いて、受信装置のユーザを識別したり認証したりすることが可能となる。さらに、配信されるデータの取得料や視聴料などを、この識別データを用いて、ユーザから徴収することが可能となる。
また、本発明の第一の態様における付加手段と取得手段と復号化手段とは、受信装置においてプログラムが実行されることにより受信装置上に実現される手段となるように構成されても良い。そして、本発明の第一の態様における管理装置は、このプログラムを、ネットワークを介して受信装置がダウンロード可能な状態に公開する公開手段をさらに含むように構成されても良い。
このように構成されることにより、配信されるデータの取得（視聴）を望むユーザは、管理装置からプログラムをダウンロードすることにより、付加手段と取得手段と復号化手段とを受信装置上に実現することが可能となる。従って、このようなユーザは、配信されるデータの取得のために新たな専用装置などを購入する必要が無く、配信されるデータの取得を手軽に行うことが可能となる。また、公開手段は、さらに第一の鍵データ及び第四の鍵データを受信装置がダウンロード可能な状態に公開するように構成されても良い。この場合、第一の鍵データ及び第四の鍵データは、上記のプログラム中に含まれるように構成されても良い。
〔第二の態様〕
本発明の第二の態様は、管理装置と配信装置と受信装置とを含む配信システムである。本発明の第二の態様では、本発明の第一の態様における管理装置が備える手段を、管理装置と配信装置とで分けて保持する。
即ち、本発明の第二の態様における管理装置は、第一の鍵データによって生成された電子サインを含むコード要求を受信する受信手段と、前記第一の鍵データに対応する第二の鍵データ及び前記電子サインを用いて、前記コード要求の送信元を認証する認証手段と、前記認証手段によって前記送信元が認証された場合に、復号化コードを含むデータであって、少なくとも前記復号化コードが第三の鍵データによって暗号化されたコード応答を、前記送信元に返信する返信手段と、を備える。
また、本発明の第二の態様における配信装置は、前記復号化コードに対応する暗号化コードを用いて、マルチキャストされるコンテンツのデータを暗号化する暗号化手段と、前記暗号化手段によって暗号化されたデータをマルチキャストする配信手段と、を備える。
また、本発明の第二の態様における受信装置は、前記第一の鍵データを用いて、コード要求に電子サインを付加する付加手段と、前記付加手段によって生成された電子サインを含むコード要求を送信する送信手段と、前記配信装置によってマルチキャストされる暗号化されたデータ及び前記管理装置によって送信されるコード応答を受信する受信手段と、前記受信手段によって受信された前記コード応答に含まれる復号化コードを、前記第三の鍵データに対応する第四の鍵データを用いて復号化し取得する取得手段と、前記取得手段によって取得された復号化コードを用いて、前記受信手段によって受信される暗号化されたデータを復号化し出力手段に渡す復号化手段と、を備える。
本発明の第二の態様における付加手段と取得手段と復号化手段とは、受信装置においてプログラムが実行されることにより受信装置上に実現される手段となるように構成されても良い。そして、本発明の第二の態様における配信システムは、このプログラムを、ネットワークを介して受信装置がダウンロード可能な状態に公開する公開装置をさらに含むように構成されても良い。
このように構成されることにより、配信されるデータの取得（視聴）を望むユーザは、公開装置からプログラムをダウンロードすることにより、付加手段と取得手段と復号化手段とを受信装置上に実現することが可能となる。従って、このようなユーザは、配信されるデータの取得のために新たな専用装置などを購入する必要が無く、配信されるデータの取得を手軽に行うことが可能となる。また、公開装置は、さらに第一の鍵データ及び第四の鍵データを受信装置がダウンロード可能な状態に公開するように構成されても良い。この場合、第一の鍵データ及び第四の鍵データは、上記のプログラム中に含まれるように構成されても良い。
〔第三の態様〕
本発明の第三の態様は、管理装置であって、第一の鍵データによって生成された電子サインを含むコード要求を受信する受信手段と、前記第一の鍵データに対応する第二の鍵データ及び前記電子サインを用いて、前記コード要求の送信元を認証する認証手段と、前記認証手段によって前記送信元が認証された場合に、復号化コードを含むデータであって、少なくとも前記復号化コードが第三の鍵データによって暗号化されたコード応答を、前記送信元に返信する返信手段と、前記復号化コードに対応する暗号化コードを用いて、マルチキャストされるコンテンツのデータを暗号化する暗号化手段と、前記暗号化手段によって暗号化されたデータをマルチキャストする配信手段と、を備える。
〔第四の態様〕
本発明の第四の態様は、受信装置であって、コード要求の送信先となる管理装置が有する第二の鍵データに対応する第一の鍵データを用いて、コード要求に電子サインを付加する付加手段と、前記付加手段によって生成された電子サインを含むコード要求を送信する送信手段と、マルチキャストされる暗号化されたデータ及び前記コード要求に応じて送信されるコード応答を受信する受信手段と、前記受信手段によって受信された前記コード応答に含まれる復号化コードであって、第三の鍵データによって暗号化された復号化コードを、前記第三の鍵データに対応する第四の鍵データを用いて復号化し取得する取得手段と、前記取得手段によって取得された復号化コードを用いて、前記受信手段によって受信される暗号化されたデータを復号化し出力手段に渡す復号化手段と、を備える。
本発明の第四の態様における前記第一の鍵データ及び第四の鍵データは前記付加手段及び前記取得手段によってのみ参照可能に構成されても良い。
〔第五の態様〕
本発明の第五の態様は、コード要求の送信先となる管理装置が有する第二の鍵データに対応する第一の鍵データを用いて、コード要求に電子サインを付加するステップと、前記電子サインが付加されたコード要求を送信するステップと、前記コード要求に応じて送信されたコード応答を受信するステップと、受信された前記コード応答に含まれる復号化コードであって、第三の鍵データによって暗号化された復号化コードを、前記第三の鍵データに対応する第四の鍵データを用いて復号化し取得するステップと、マルチキャストされる暗号化されたデータを受信するステップと、取得された前記復号化コードを用いて、受信される前記暗号化されたデータを復号化し出力手段に渡すステップと、を情報処理装置に実行させるプログラムであって、前記第一の鍵データと前記第四の鍵データと前記復号化コードとは、前記情報処理装置のユーザ及び前記情報処理装置によって実行される他のプログラムによって参照されないように構成される。
また、本発明の第五の態様は、前記第一の鍵データと前記第四の鍵データとを含むように構成されても良い。
また、本発明の第五の態様における前記第一の鍵データと前記第四の鍵データとは同一の鍵データを用いて構成され、本発明の第五の態様における前記第二の鍵データと前記第三の鍵データとは同一の鍵データを用いて構成されても良い。
本発明によれば、配信されるデータの不正視聴を防止するとともに、マルチキャストによって配信することにより、配信する装置（例：放送局のサーバ）や、この装置と受信装置との間に介在する中継装置における処理の負担を軽減することが可能となる。
【図面の簡単な説明】  ＦＩＧ．１は、本発明による放送システムの概要を示す図であり、
ＦＩＧ．２は、第一実施形態によるクライアントとローカル局との機能ブロック図であり、
ＦＩＧ．３は、復号化コード要求のメッセージの内容を示す図であり、
ＦＩＧ．４は、復号化コード応答のメッセージの内容を示す図であり、
ＦＩＧ．５は、鍵記憶部の記憶内容を示す図であり、
ＦＩＧ．６は、復号化情報を示す図であり、
ＦＩＧ．７は、公開先情報を示す図であり、
ＦＩＧ．８は、暗号化情報を示す図であり、
ＦＩＧ．９は、暗号化データの内容を示す図であり、
ＦＩＧ．１０は、復号化コード取得部の動作例を示すフローチャートであり、
ＦＩＧ．１１は、復号化部の動作例を示すフローチャートであり、
ＦＩＧ．１２は、アプレット生成部の動作例を示すフローチャートであり、
ＦＩＧ．１３は、視聴者認証部の動作例を示すフローチャートであり、
ＦＩＧ．１４は、暗号化部の動作例を示すフローチャートであり、
ＦＩＧ．１５は、受信開始処理のシーケンス例を示す図であり、
ＦＩＧ．１６は、受信継続処理のシーケンス例を示す図であり、
ＦＩＧ．１７は、第二実施形態によるクライアントとローカル局との機能ブロック図であり、
ＦＩＧ．１８は、切替クライアントキーセットテーブルの内容を示す図であり、
ＦＩＧ．１９は、切替ローカル局キーセットテーブルの内容を示す図であり、
ＦＩＧ．２０は、暗号化データの内容を示す図であり、
ＦＩＧ．２１は、暗号化部の動作例を示すフローチャートであり、
ＦＩＧ．２２は、暗号化部の動作例を示すフローチャートであり、
ＦＩＧ．２３は、暗号化部の動作例を示すフローチャートであり、
ＦＩＧ．２４は、暗号化部の動作例を示すフローチャートであり、
ＦＩＧ．２５は、切替鍵生成部の動作例を示すフローチャートであり、
ＦＩＧ．２６は、復号化部の動作例を示すフローチャートであり、
ＦＩＧ．２７は、復号化部の動作例を示すフローチャートであり、
ＦＩＧ．２８は、切替クライアントキーセットについての処理を示す図であり、
ＦＩＧ．２９は、切替ローカル局キーセットについての処理を示す図である。
【発明を実施するための最良の形態】  次に、図を用いて本発明の実施形態におけるシステムや装置について説明する。なお、本実施形態の説明は例示であり、本発明の構成は以下の説明に限定されない。
［第一実施形態］
〔システム構成〕
ＦＩＧ．１は、本発明の第一実施形態による放送システム１の概要を示す図である。ＦＩＧ．１を用いて、放送システム１について説明する。
放送システム１は、中継局２ａ，ローカル局２，キー局３，及び複数のクライアント（Ｃｌｉｅｎｔ）４を用いて構成される。キー局３と中継局２ａとの間、及び中継局２ａと各ローカル局２との間では、１対１のＩＰ通信が実施される。また、中継局２ａ及びローカル局２と各クライアント４との間では、マルチキャストによるＩＰ通信が実施される。
放送システム１では、キー局３によって発信されるコンテンツのデータは、中継局２ａやローカル局２によって、各クライアント４へ配信される。この際、中継局２ａやローカル局２は、コンテンツのデータを暗号化し、マルチキャストによるＩＰ通信を用いて、コンテンツのデータの配信を行う。以下の説明では、キー局３によって発信されるコンテンツのデータは、ストリーミングデータであると想定する。実際には、キー局３によって発信されるコンテンツのデータは、用途に応じてどのようなデータであっても良い。
ＦＩＧ．２は、ローカル局２とクライアント４との構成を示すブロック図である。次に、ＦＩＧ．２を用いて、ローカル局２とクライアント４との構成について説明する。ＦＩＧ．２及び以下の説明では、ローカル局２の構成について説明するが、中継局２ａも同様の構成を備える。即ち、クライアント４は中継局２ａと、以下の説明における通信と同様の通信を行うことによって、コンテンツのデータを取得することも可能である。なお、中継局２ａは、下記で説明されるローカル局２の構成に加えて、複数のローカル局２にコンテンツのデータを配信する機能を備える。
〈クライアント〉
まず、クライアント４の構成について説明する。クライアント４は、パーソナルコンピュータやワークステーションやＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）等の、通信機能を備える情報処理装置を用いて構成される。クライアント４は、ハードウェア的には、バスを介して接続されたＣＰＵ，主記憶（ＲＡＭ），補助記憶装置（ハードディスク，フラッシュメモリ等）等を備えている。クライアント４は、補助記憶装置に記憶された各種のプログラム（ＯＳ，アプリケーション等）が主記憶にロードされＣＰＵにより実行されることによって、Ｗｅｂブラウザ実行部５，放送受信部６，表示部１１等を含む装置として機能する。また、クライアント４は、不図示の通信装置を備える。Ｗｅｂブラウザ実行部５，放送受信部６，表示部１１は、ローカル局２や他の装置とネットワークを介した通信を行う場合、この通信装置を介して通信を実施する。
〈〈Ｗｅｂブラウザ実行部〉〉
Ｗｅｂブラウザ実行部５は、ＷｅｂブラウザのプログラムがＣＰＵによって実行されることにより実現される。実行されるプログラムはどのようなＷｅｂブラウザのプログラムでも良く、例えばインターネットエクスプローラやネットスケープ（登録商標）等がある。Ｗｅｂブラウザ実行部５は、Ｗｅｂブラウザの機能をクライアント４に提供する。ユーザは、Ｗｅｂブラウザ実行部５を用いて、ローカル局２から放送受信アプレットをダウンロードする。
〈〈放送受信部〉〉
放送受信部６は、クライアント４に記憶される放送受信アプレットの実行コードがＣＰＵによって実行されることにより実現される。また、放送受信部６は、必要に応じてデータを保持するために、クライアント４が備える主記憶又は補助記憶装置にデータを書き込む。放送受信部６は、ローカル局２からコンテンツのデータを受信し、受信されたデータを表示部１１が表示可能なデータに変換する。放送受信部６は、このような処理を行うために、復号化コード取得部７，鍵記憶部８，復号化情報記憶部９，及び復号化部１０を備える。以下、放送受信部６が備える各構成について説明する。
〈〈復号化コード取得部〉〉
復号化コード取得部７は、復号化コード要求を生成し、生成された復号化コード要求をローカル局２に送信することにより、復号化コード応答を受信する。復号化コード取得部７は、受信された復号化コード応答を、鍵記憶部８に記憶されるクライアント秘密鍵を用いて復号化する。復号化コード取得部７は、復号化された復号化コード応答に含まれる復号化コードを取得し、取得された復号化コードを復号化情報記憶部９に書き込む。
ＦＩＧ．３は、復号化コード要求のデータの構成を示す図である。復号化コード要求は、利用者情報，クライアント公開鍵，付加情報，及びクライアント電子サインを含む。
利用者情報は、クライアント４のユーザの情報を含む。例えば、ローカル局２によってクライアント４へ配信されるコンテンツが有料のものである場合、視聴料を徴収するためのクレジット情報などが利用者情報に含まれる。また、利用者情報は、利用者によって作成される電子サイン等、利用者本人を認証できる者であっても良い。なお、本実施形態では、ローカル局２からクライアント４へ配信されるコンテンツは有料のものであり、利用者情報にはユーザのクレジット情報が含まれると想定する。利用者情報は、クライアント４に接続又は設置された入力装置を介して、ユーザによって入力される。また、利用者情報は、あらかじめクライアント４の補助記憶装置に記憶されているデータであっても良い。
クライアント公開鍵は、クライアント４に記憶される放送受信アプレットのデータとして、対応するクライアント秘密鍵とともにカプセル化されてアプレット内に保持される公開鍵データである。このため、クライアント公開鍵は、基本的に放送受信アプレットの機能、即ち放送受信部６が備える構成によってのみ、読みだしや変更が可能となる。クライアント公開鍵と対応するクライアント秘密鍵も、同様にカプセル化されて、クライアント４に記憶される。クライアント公開鍵及びクライアント秘密鍵は、同一のデータが、放送受信アプレットを受信する複数のユーザによって使用される。即ち、複数のユーザは、放送受信アプレットを受信することにより、共通のクライアント公開鍵及びクライアント秘密鍵を使用する。
付加情報は、本発明による放送システム１の実現とは関わりないデータであり、放送システム１を実現する者によってどのように利用されても良い。
クライアント電子サインは、クライアント４に記憶されるクライアント秘密鍵を用いて生成される電子サインである。この電子サインは、復号化コード取得部７によって生成される。
ＦＩＧ．４は、復号化コード応答のデータの構成を示す図である。復号化コード応答は、放送アドレス，復号化コード，復号化コード有効期間，及びローカル局電子サインを含む。
放送アドレスは、現在ローカル局２が配信しているコンテンツのマルチキャストアドレスを示す。
復号化コードは、ローカル局２から配信されるコンテンツのデータを復号化するために用いられるデータである。
復号化コード有効期間は、復号化コードと対応するデータであり、対応する復号化コードの有効期間を示す。復号化コードとその有効期間とは、必要に応じて、一つの復号化コード応答に複数含まれるように構成されても良い。
ローカル局電子サインは、ローカル局２によって生成される電子サインである。ローカル局電子サインは、復号化コード取得部７によって、復号化コード応答の認証に使用される。復号化コード取得部７は、認証された復号化コード応答に含まれる復号化コードとその有効期間とを対応付けて復号化情報記憶部に書き込む。
〈〈鍵記憶部〉〉
ＦＩＧ．５は、鍵記憶部８が記憶するデータを示す図である。鍵記憶部８は、クライアント公開鍵とクライアント秘密鍵とのキーセットを記憶する。また、鍵記憶部８は、ローカル局２の公開鍵（ローカル局公開鍵）を記憶する。鍵記憶部８は、一つの放送受信アプレットに含まれるキーセットとローカル局公開鍵とを対応付けて記憶する。鍵記憶部８が記憶するデータは、復号化コード取得部７によって読み書きされる。
〈〈復号化情報記憶部〉〉
ＦＩＧ．６は、復号化情報記憶部９が記憶するデータ（復号化情報）を示す図である。復号化情報記憶部９は、ローカル局２によって配信されるコンテンツのデータを復号化するための情報を記憶する。具体的には、復号化情報記憶部９は、復号化コードと復号化コード有効期間とを対応付けて記憶する。復号化コードは、復号化コード有効期間の間のみ、復号化部１０によって利用される。
〈〈復号化部〉〉
復号化部１０は、ローカル局２によって配信されクライアント４によって受信されるコンテンツのデータを復号化する。復号化部１０は、復号化情報記憶部９に記憶される復号化コードを用いて、受信されたコンテンツのデータを復号化する。復号化部１０は、復号化されたコンテンツのデータ（平文データ）を、表示部１１へ渡す。
〈〈表示部〉〉
表示部１１は、液晶モニタやＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）等のディスプレイを用いて構成される。また、表示部１１は、必要に応じて、スピーカ等の音声出力装置や、マイク等の音声入力装置などをさらに用いて構成されても良い。表示部１１は、放送受信部６から受け取る平文データを出力する。
〈ローカル局〉
次に、ローカル局２の構成について説明する。ローカル局２は、パーソナルコンピュータやワークステーション等の通信機能を備える情報処理装置、又は専用装置を用いて構成される。ローカル局２は、ハードウェア的には、バスを介して接続されたＣＰＵ，主記憶（ＲＡＭ），補助記憶装置（ハードディスク，フラッシュメモリ等）等を備えている。ローカル局２は、補助記憶装置に記憶された各種のプログラム（ＯＳ，アプリケーション等）が主記憶にロードされＣＰＵにより実行されることによって、Ｗｅｂサーバ機能実行部１２，アプレット生成部１３，ソースファイル記憶部１４，アプレット記憶部１５，公開先情報記憶部１６，視聴者認証部１７，暗号化情報記憶部１８，暗号化部１９等を含む装置として機能する。また、ローカル局２は、不図示の通信装置を備える。Ｗｅｂサーバ機能実行部１２，アプレット生成部１３，ソースファイル記憶部１４，アプレット記憶部１５，公開先情報記憶部１６，視聴者認証部１７，暗号化情報記憶部１８，暗号化部１９は、クライアント４や他の装置とネットワークを介した通信を行う場合、この通信装置を介して通信を実施する。
〈〈Ｗｅｂサーバ機能実行部〉〉
Ｗｅｂサーバ機能実行部１２は、Ｗｅｂサーバとしてのプログラム（例：ＨＴＴＰＤ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ  Ｄａｅｍｏｎ））がＣＰＵによって実行されることにより実現される。実行されるプログラムはどのようなＷｅｂサーバとしてのプログラムでも良く、例えばＣＥＲＮ  ＨｔｔｐｄやＡｐａｔｃｈ等がある。Ｗｅｂサーバ機能実行部１２は、Ｗｅｂサーバとしての機能をローカル局２に提供する。
Ｗｅｂサーバ機能実行部１２は、アプレット記憶部１５に記憶される放送受信アプレットをインターネットに公開する。即ち、Ｗｅｂサーバ機能実行部１２は、放送受信アプレットを、不特定のユーザに対しインターネットを介してダウンロード可能な状態に保持する。Ｗｅｂサーバ機能実現部１２は、他のプログラムが実行されることにより、ＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）等の他のプロトコルを用いて放送受信アプレットを公開するように構成されても良い。他のプログラムの例として、ＦＴＰＤ（ＦＴＰ  Ｄａｅｍｏｎ）等がある。
〈〈アプレット生成部〉〉
アプレット生成部１３は、ソースファイル記憶部１４に記憶されるソースファイルを用いて、放送受信アプレットを生成する。アプレット生成部１３は、放送受信アプレットを生成するためのプログラムがＣＰＵによって実行されることにより実現される。
アプレット生成部１３は、クライアントキーセットを生成する。アプレット生成部１３は、生成されたクライアントキーセットを、放送受信アプレット内にカプセル化して埋め込む。アプレット生成部１３は、生成された放送受信アプレットをアプレット記憶部１５に書き込む。
〈〈ソースファイル記憶部〉〉
ソースファイル記憶部１４は、ローカル局２が備える補助記憶装置を用いて構成される。ソールファイル記憶部１４は、放送受信アプレットを生成するためのソースコードをソースファイルとして記憶する。ソースファイル記憶部１４が記憶するソースファイルは、アプレット生成部１３によって読み出される。
〈〈アプレット記憶部〉〉
アプレット記憶部１５は、ローカル局２が備える補助記憶装置やＲＡＭ等を用いて構成される。アプレット記憶部１５は、アプレット生成部１３によって生成された放送受信アプレットを記憶する。アプレット記憶部１５が記憶する放送受信アプレットは、Ｗｅｂサーバ機能実現部１２によってインターネットに公開される。
〈〈公開先情報記憶部〉〉
公開先情報記憶部１６は、ローカル局２が備える補助記憶装置やＲＡＭ等を用いて構成される。公開先情報記憶部１６は、公開先情報を記憶する。ＦＩＧ．７は、公開先情報の例を示す図である。公開先情報は、クライアント公開鍵と、各クライアント公開鍵の有効期限とを対応付けて持つ。公開先情報は、アプレット生成部１３によって書き込まれる。
〈〈視聴者認証部〉〉
視聴者認証部１７は、視聴者認証を行うためのプログラムがＣＰＵによって実行されることにより実現される。視聴者認証部１７は、クライアント４から受信された復号化コード要求に含まれるクライアント公開鍵やクライアント電子サインを用いて、クライアント４についての認証を行う。クライアント４が認証された場合に、視聴者認証部１７は、復号化コード応答を生成し、生成された復号化コード応答をクライアント４に送信する。この際、視聴者認証部１７は、生成された復号化コード応答を、受信されたクライアント公開鍵を用いて暗号化する。
〈〈暗号化情報記憶部〉〉
暗号化情報記憶部１８は、ローカル局２が備える補助記憶装置やＲＡＭ等を用いて構成される。ＦＩＧ．８は、暗号化情報記憶部１８が記憶するデータ（暗号化情報）の例を示す図である。暗号化情報記憶部１８は、暗号化コードと復号化コードと有効期限とを対応付けて記憶する。暗号化コードによって暗号化されたデータは、対応付けて記憶される復号化コードによって復号化が可能である。暗号化コードは、対応する有効期間の間、コンテンツのデータの暗号化に使用される。
〈〈暗号化部〉〉
暗号化部１９は、ストリーミングデータの平文データを暗号化するためのプログラムがＣＰＵによって実行されることにより実現される。暗号化部１９は、暗号化データを生成し、生成された暗号化データをクライアント４へ送信する。ＦＩＧ．９は、暗号化データの内容を示す図である。暗号化データは、タイムスタンプと付加情報と暗号化ストリーミングデータとを含む。
暗号化部１９は、供給部２０によって供給される平文データを暗号化する。暗号化部１９は、暗号化情報記憶部１８によって記憶される暗号化コードを用いて、平文データの暗号化を実行し、暗号化ストリーミングデータを生成する。暗号化部１９は、暗号化コードのうち、対応する有効期限に従って有効な暗号化コードを判断し、判断された暗号化コードを使用する。暗号化部１９によって生成された暗号化ストリーミングデータは、タイムスタンプや付加情報と共に、暗号化データとしてクライアント４へ送信される。
〈供給部〉
供給部２０は、ストリーミングデータの平文データを記憶し、記憶される平文データをローカル局２へ渡す。平文データは、クライアント４へ配信されるコンテンツのデータを含む。供給部２０は、例えばキー局３に備えられる。供給部２０に記憶される平文データは、キー局３の備える通信能力により、中継局２ａやローカル局２へ送信される。
〔動作例〕
次に、放送システム１の構成の動作例について説明する。まず、クライアント４の動作例について説明する。
〈クライアント〉
Ｗｅｂブラウザ実行部５は、一般的なブラウザソフトとして動作する。表示部１１は、一般的な出力装置として動作する。また、鍵記憶部８と復号化情報記憶部９とは、データの読み書きが実施される対象として動作する。このように、これらの構成は、データの記憶内容などに特徴的な部分があるとしても、その動作は本発明による特徴的な動作ではない。このため、Ｗｅｂブラウザ実行部５，鍵記憶部８，復号化情報記憶部９，及び表示部１１の動作例についての詳細な説明は省く。
〈〈復号化コード取得部〉〉
ＦＩＧ．１０は、復号化コード取得部７の動作例を示すフローチャートである。ＦＩＧ．１０を用いて、復号化コード取得部７の動作例について説明する。
復号化コード取得部７は、ローカル局２から受信された復号化コード応答を、クライアント秘密鍵を用いて復号化する（Ｓ０１）。復号化コード取得部７は、復号化が失敗すると（Ｓ０２−Ｎｏ）、ユーザ（利用者）に対し、復号化コード取得が失敗したことを通知する（Ｓ０３）。
一方、復号化コード取得部７は、復号化が成功すると（Ｓ０２−Ｙｅｓ）、ローカル局公開鍵を用いて、受信された復号化コード応答の作成者について認証を行う（Ｓ０４）。復号化コード取得部７は、認証に失敗した場合（Ｓ０５−ＮＧ）、ユーザ（利用者）に対し、復号化コード取得が失敗したことを通知する（Ｓ０３）。
一方、復号化コード取得部７は、認証に成功すると（Ｓ０５−ＯＫ）、受信された復号化コード応答に含まれる放送アドレスを、復号化部１０へ通知する（Ｓ０６）。そして、復号化コード取得部７は、受信された復号化コード応答に含まれる復号化コード及び復号化コード有効期限を、復号化情報として、復号化情報記憶部９に設定する（Ｓ０７）。
〈〈復号化部〉〉
ＦＩＧ．１１は、復号化部１０の動作例を示すフローチャートである。ＦＩＧ．１１を用いて、復号化部１０の動作例について説明する。
復号化部１０は、復号化コード取得部７から通知された放送アドレスから、暗号化データを受信する（Ｓ０８）。即ち、復号化部１０は、放送アドレスに含まれるマルチキャストアドレス宛に送信された暗号化データを受信する。復号化部１０は、受信された暗号化データから、タイムスタンプを取得する（Ｓ０９）。次に、復号化部１０は、取得されたタイムスタンプをキーとして、復号化情報記憶部９に記憶される有効期限を検索し、対応する復号化コードを得る。即ち、復号化部１０は、取得されたタイムスタンプが示す日時に有効である復号化コードを取得する（Ｓ１０）。次に、復号化部１０は、取得された復号化コードを用いて、受信された暗号化データに含まれる暗号化ストリーミングデータを復号化し、ストリーミングデータの平文データを取得する（Ｓ１１）。そして、復号化部１０は、取得された平文データを表示部１１へ渡す（Ｓ１２）。こうして、表示部１１により、ローカル局２から受信されたストリーミングデータが表示される。
〈ローカル局〉
次に、ローカル局２の動作例について説明する。Ｗｅｂサーバ機能実行部１２は、一般的なＷｅｂサーバとして動作する。また、ソースファイル記憶部１４，アプレット記憶部１５，公開先情報記憶部１６，及び暗号化情報記憶部１８は、データの読み書きが実施される対象として動作する。このように、これらの構成は、データの記憶内容などに特徴的な部分があるとしても、その動作は、本発明による特徴的な動作ではない。このため、Ｗｅｂサーバ機能実行部１２，ソースファイル記憶部１４，アプレット記憶部１５，公開先情報記憶部１６，及び暗号化情報記憶部１８の動作例についての詳細な説明は省く。
〈〈アプレット生成部１３〉〉
ＦＩＧ．１２は、アプレット生成部１３の動作例を示すフローチャートである。ＦＩＧ．１２を用いてアプレット生成部１３の動作例について説明する。
アプレット生成部１３は、ローカル局２の設定に応じて、定期的に起動される。アプレット生成部１３は、起動されると、ＦＩＧ．１２に示されるようなフローチャートに従って放送受信アプレットを生成する。
まず、アプレット生成部１３は、ワークと呼ばれる作業領域を記憶領域上に確保する。ワーク内には、鍵データとして、クライアント公開鍵，クライアント秘密鍵，及びローカル局公開鍵を記憶する領域が作成される。アプレット生成部１３は、ソースファイル記憶部１４からワークに、ソースファイルをコピーする（Ｓ１３）。
アプレット生成部１３は、あらかじめローカル局２の管理者などによって生成されているローカル局２の公開鍵（ローカル局公開鍵）を、ワーク内のローカル局公開鍵に設定する（Ｓ１４）。次に、アプレット生成部１３は、クライアント公開鍵及びクライアント秘密鍵のキーセットを生成する（Ｓ１５）。アプレット生成部１３は、生成されたキーセットを、ワーク内のクライアント公開鍵とクライアント秘密鍵に設定する（Ｓ１６，Ｓ１７）。次に、アプレット生成部１３は、生成されたキーセットの有効期限を設定する（Ｓ１８）。アプレット生成部１３は、生成されたクライアント公開鍵と有効期限とを対応付けて、公開先情報として公開先情報記憶部１６に書き込む（Ｓ１９）。
アプレット生成部１３は、ワーク内のデータをコンパイルし、放送受信アプレットを生成する。アプレット生成部１３は、生成された放送受信アプレットを、公開するために、アプレット記憶部１５に書き込む（Ｓ２０）。そして、アプレット生成部１３は、ワークを破棄する（Ｓ２１）。
〈〈視聴者認証部〉〉
ＦＩＧ．１３は、視聴者認証部１７の動作例を示すフローチャートである。ＦＩＧ．１３を用いて視聴者認証部１７の動作例について説明する。
視聴者認証部１７は、復号化コード要求を受信すると、受信された復号化コード要求に含まれるクライアント電子サインを用いて、受信された復号化コード要求の作成者について認証を行う（Ｓ２２）。視聴者認証部１７は、認証に失敗した場合（Ｓ２３−ＮＧ）、クライアント４に対し、拒否を示すデータを返信する（Ｓ３１）。
一方、視聴者認証部１７は、認証に成功すると（Ｓ２３−ＯＫ）、受信された復号化コード要求に含まれるクライアント公開鍵が、公開先情報に登録されているか否かを検索する（Ｓ２４）。視聴者認証部１７は、登録されていない場合（Ｓ２５−Ｎｏ）、クライアント４に対し、拒否を示すデータを返信する（Ｓ３１）。
一方、視聴者認証部１７は、登録がなされている場合（Ｓ２５−Ｙｅｓ）、受信された復号化コード要求に含まれる利用者情報の内容を、課金先情報として記憶する（Ｓ２６）。クライアント４のユーザに対する課金の徴収は、この課金先情報を用いて実施される。課金の徴収は、既存のどのような方法によって行われても良い。
視聴者認証部１７は、現在、ローカル局２が配信しているコンテンツのマルチキャストアドレスを、復号化コード応答の放送アドレスとして設定する（Ｓ２７）。視聴者認証部１７は、暗号化情報記憶部１８に記憶される復号化コードと有効期間とを、復号化コード応答の復号化コードと復号化コード有効期間とに設定する（Ｓ２８）。このとき、視聴者認証部１７は、暗号化情報記憶部１８に記憶される復号化コードのうち、有効期間を検討し、現在及び／又は将来使用可能な復号化コードと有効期間とを設定に用いる。
視聴者認証部１７は、ローカル局２の秘密鍵（ローカル局秘密鍵）を用いて、ローカル局電子サインを生成する。視聴者認証部１７は、生成されたローカル局電子サインを、復号化コード応答のローカル局電子サインに設定する（Ｓ２９）。このとき、視聴者認証部１７は、クライアント４に通知されているローカル局公開鍵に対応するローカル局秘密鍵を用いて、ローカル局電子サインを生成する。そして、視聴者認証部１７は、受信された復号化コード要求に含まれるクライアント公開鍵を用いて、復号化コード応答を暗号化し、クライアント４へ送信する（Ｓ３０）。
〈〈暗号化部〉〉
ＦＩＧ．１４は、暗号化部１９の動作例を示すフローチャートである。ＦＩＧ．１４を用いて暗号化部１９の動作例について説明する。
暗号化部１９は、供給部２０から、コンテンツとしてのストリーミングデータの平文データを受領する（Ｓ３２）。この際、暗号化部１９は、１パケット文の平文データを受領する。次に、暗号化部１９は、ローカル局２の不図示の計時部から、現在時刻を受領する（Ｓ３３）。暗号化部１９は、暗号化情報記憶部１８に記憶される暗号化コードのうち、その有効期限が、受領された現在時刻に対応する暗号化コードを検索し取得する（Ｓ３４）。暗号化部１９は、取得された暗号化コードを用いて、受領された平文データを暗号化し、暗号化ストリーミングデータを生成する（Ｓ３５）。暗号化部１９は、受領された現在時刻を、暗号化データのタイムスタンプに設定する（Ｓ３６）。また、暗号化部１９は、生成された暗号化ストリーミングデータを、暗号化データの暗号化ストリーミングデータとして設定する（Ｓ３７）。そして、暗号化部１９は、生成された暗号化データを、放送アドレスに対して放送（マルチキャスト送信）する（Ｓ３８）。
〔動作シーケンス〕
次に、放送システム１の動作シーケンスのうち、受信開始処理と受信継続処理のシーケンスについて説明する。
〈受信開始処理〉
受信開始処理とは、あるローカル局２によって配信されるコンテンツの受信をクライアント４が開始する際に実行される処理である。ＦＩＧ．１５は、受信開始処理のシーケンス例を示す図である。ＦＩＧ．１５を用いて受信開始処理のシーケンス例について説明する。
まず、クライアント４のＷｅｂブラウザ実行部５によって、ローカル局２のＷｅｂサーバ実行部１２に対し、放送受信アプレットダウンロード要求が送信される（Ｓｅｑ０１）。即ち、クライアント４からローカル局２に対し、放送受信アプレットのダウンロードが要求される。この要求に対し、Ｗｅｂサーバ実行部１２は、Ｗｅｂブラウザ実行部５に対し、放送受信アプレットダウンロードを実行する（Ｓｅｑ０２）。即ち、ローカル局２からクライアント４に対し、放送受信アプレットがダウンロードされる。ダウンロードされた放送受信アプレットは、Ｗｅｂブラウザ実行部５によって実行されることにより、放送受信部６が起動される。この時点では、放送受信部６は復号化コードを取得していないため、ローカル局２の暗号化部１９によって配信される暗号化データは、復号化部１０によって復号化されない（Ｓｅｑ０３）。
ユーザによって利用者情報が入力されると、放送受信部６の復号化コード取得部７は、復号化コード要求をローカル局２に送信する（Ｓｅｑ０４）。ローカル局２の視聴者認証部１７は、受信された復号化コード要求に対し、クライアント４に復号化コード応答を送信する（Ｓｅｑ０５）。この時点でも、放送受信部６は復号化コードを取得していないため、ローカル局２の暗号化部１９によって配信される暗号化データは、復号化部１０によって復号化されない（Ｓｅｑ０６）。
復号化コード取得部７は、受信された復号化コード応答に含まれる復号化コードを取得し、復号化情報記憶部９に書き込むことにより、取得された復号化コードを復号化部１０に通知する。以後、ローカル局２の暗号化部１９によって配信される暗号化データは、復号化部１０によって復号化され、表示部１１によって復号化されたストリーミングデータが出力される（Ｓｅｑ０７，Ｓｅｑ０８）。
〈受信継続処理〉
受信継続処理とは、あるローカル局２によって配信されるコンテンツの受信をクライアント４が継続する際に実行される処理である。ローカル局２によって使用される暗号化コードと復号化コードとは、時間の経過に伴って変更される。この変更は、定期的に実施されても良いし、ローカル局２の都合に応じてどのような時間に実施されても良い。このように、使用される暗号化コードと復号化コードとが変更されることにより、不正視聴者による不正な視聴を防止することが可能となる。受信継続処理では、この変更に伴い、新たな復号化コードがクライアント４に通知され、クライアント４において新たな復号化コードを使用したコンテンツの受信が継続される。
ＦＩＧ．１６は、受信継続処理のシーケンス例を示す図である。ＦＩＧ．１６を用いて受信継続処理のシーケンス例について説明する。
復号化部１０によって使用される復号化コードの有効期限が切れるまでは、暗号化部１９によって送信される暗号化データは、復号化部１０によって復号化され、表示部１１によって出力されている（Ｓｅｑ０９，Ｓｅｑ１０）。復号化部１０によって使用される復号化コードの有効期限が切れると、放送受信部６の復号化コード取得部７は、新たな復号化コードを取得するため、復号化コード要求をローカル局２に送信する（Ｓｅｑ１１）。ローカル局２の視聴者認証部１７は、受信された復号化コード要求に応じて、復号化コード応答をクライアント４に送信する（Ｓｅｑ１２）。この時点では、放送受信部６は新たな復号化コードを取得していないため、ローカル局２の暗号化部１９によって新たな暗号化コードが適用された暗号化データは、復号化部１０によって復号化されない（Ｓｅｑ１３）。
クライアント４の復号化コード取得部７は、受信された復号化コード応答に含まれる復号化コードを取得し、復号化情報記憶部９に書き込むことにより、取得された復号化コードを復号化部１０に通知する。以後、ローカル局２の暗号化部１９によって配信される暗号化データは、復号化部１０によって復号化され、表示部１１によって復号化されたストリーミングデータが出力され、受信が継続される（Ｓｅｑ１４，Ｓｅｑ１５）。
〔作用／効果〕
第一実施形態では、クライアントキーセット及びローカル局公開鍵とが内包された（カプセル化により埋め込まれた）放送受信アプレットが、クライアント４上で動作する。放送受信アプレットは復号化コードを取得するために電子サインを含む復号化コード要求を送信する。ローカル局２は、復号化コード要求に含まれる電子サインを用いて、復号化コード要求の送信元であるクライアント４を認証する。この際、この電子サインの作成に使用される放送受信アプレットに内包された鍵のデータは、カプセル化されているため、ユーザは基本的に参照することができない。このため、ローカル局２の視聴者認証部１７は、放送受信アプレットを使用せずに不正に送信された復号化コード要求と、放送受信アプレットを使用して正当に送信された復号化コード要求とを区別することが可能となる。従って、放送受信アプレットを使用していない不正視聴者に対し復号化コードを送信しないようるすることにより、不正視聴を防止することが可能となる。
また、復号化コードが含まれる復号化コード応答は、放送受信アプレットに内包される鍵によって復号化可能なように暗号化され送信される。上記のように、放送受信アプレットに内包された鍵のデータは、カプセル化されているため、ユーザは基本的に参照することができない。このため、不正視聴者が、例え不正に復号化コード応答の取得に成功したとしても、この復号化コード応答を復号化することは困難である。このため、第一実施形態では、上記の不正視聴防止策と併せて二重に不正視聴を防止することが可能となる。即ち、放送受信アプレットに内包される鍵のデータが漏洩しない限り、放送の不正な視聴を防止することが可能となる。
また、上記のように不正な視聴を防止することが可能であるため、ローカル局２からクライアント４へユニキャストではなくマルチキャストによってコンテンツのデータを配信することが可能となる。このため、ローカル局２における通信装置や、ローカル局２とクライアント４との間に介在する通信装置（中継装置）における通信処理の負荷が軽減される。
また、ユーザにとっては、特別な受信機器を購入する必要がなく、インターネットを介して放送受信アプレットをダウンロードすることにより放送の視聴が可能となる。このため、ユーザにとっての初期導入費用の削減や、この費用の削減による需要の喚起が実現される。
また、復号化コードの更新は、インターネットを介した復号化コード要求及び復号化コード応答によって実現される。このため、クライアント４における復号化コードの更新が容易に実現できる。従って、頻繁に復号化コードを更新することが可能であり、復号化コードの継続的な使用による不正視聴の発生を防止することが可能となる。
また、ローカル局２によってコンテンツの配信を行う放送局は、受信された復号化コード要求に含まれる利用者情報に従って視聴者から料金を徴収することが可能である。このため、視聴者は視聴したいときに視聴し、その視聴時間分の料金を支払うことが可能となる。また、放送局は、コンテンツや視聴時間毎に料金を随意に設定し、個々の視聴者に対しコンテンツの視聴状況に合わせて料金を請求することが可能となる。
また、放送局は、放送受信アプレットにより、視聴番組，視聴時間などの視聴情報を容易に収集することが可能となる。
〔変形例〕
放送システム１は、中継局２ａの配下にローカル局２が設けられているが、ローカル局２が設置されることなく、中継局２ａ及びキー局３によってクライアント４へのコンテンツ配信を行うように構成されても良い。また、放送システム１は、キー局３の配下に中継局２ａが設けられているが、中継局２ａが設けられることなく、キー局のみによってクライアント４へのコンテンツ配信を行うように構成されても良い。この場合、キー局３は、中継局２ａやローカル局２と同様に、クライアント４へのコンテンツ配信を行うための各機能を備える。
また、シーケンス例のＳｅｑ１３では、暗号化コードの更新のために復号化部１０によって一時的に復号化されない暗号化データが発生している。しかし、クライアント４において受信継続処理を開始するタイミングを調整することにより、復号化部１０は受信される暗号化データをとぎれることなく復号化することが可能である。具体的には、受信継続処理に要する時間を見積もり、使用中の復号化コードの有効期限から見積もられた時間をさかのぼった時点より以前から受信継続処理を開始するように構成されれば良い。
また、第一実施形態ではインターネットを用いて放送システム１が実現されているが、インターネットに限らず、放送局側（ローカル局２，中継局２ａ，キー局３）とクライアント４とが双方向通信可能であれば、他のどのようなネットワークを用いて放送システム１が実現されても良い。このような他のネットワークの例として、ＢＳデジタル放送や地上波デジタル放送などがある。
また、放送受信アプレットに内包される鍵のデータのうち、クライアント公開鍵をユーザにとって参照可能にしても良い。即ち、放送受信アプレットは、クライアント公開鍵を公開するように構成されても良い。このように構成されることにより、ユーザは、放送受信アプレットのプログラムによってローカル局２に送信されるデータの内容を確認することが可能となる。
また、本発明の第一実施形態におけるローカル局２は、複数の機能に分割されて設置されても良い。例えば、Ｗｅｂサーバ１２，アプレット生成部１３，ソースファイル記憶部１４，及びアプレット記憶部１５を備える第一サーバ（公開装置に相当）と、公開先情報記憶部１６及び視聴者認証部１７を備える第二サーバ（管理装置に相当）と、暗号化情報記憶部１８及び暗号化部１９を備える第三サーバ（配信装置に相当）とを設置することによりローカル局２の代わりとするように構成されても良い。
［第二実施形態］
〔システム構成〕
ＦＩＧ．１７は、本発明の第二実施形態による放送システム１Ａの概要を示す図である。放送システム１Ａでは、クライアント公開鍵，クライアント秘密鍵，ローカル局公開鍵，及びローカル局秘密鍵が、任意に新たな鍵に切り替えられる（鍵切替処理）。ＦＩＧ．１７は、鍵切替処理を説明するために必要な構成のみを示す。即ち、ＦＩＧ．１７に示されるクライアント４Ａとローカル局２Ａとは、ＦＩＧ．１７に示される構成の他にＦＩＧ．２に示される構成も各自備える。以下、ＦＩＧ．１７を用いて、放送システム１Ａについて説明する。
〈ローカル局〉
まず、ローカル局２Ａの構成について説明する。ローカル局２Ａは、ローカル局２における暗号化部１９の代わりに、暗号化部１９Ａを備える。また、ローカル局２Ａは、切替鍵記憶部２１と切替鍵生成部２２とを備える。上記の点を除き、ローカル局２Ａの構成はローカル局２と同様の構成となる。
〈〈切替鍵記憶部〉〉
切替鍵記憶部２１は、ローカル局２Ａが備える補助記憶装置を用いて構成される。切替鍵記憶部２１は、切替クライアントキーセットテーブルと切替ローカル局キーセットテーブルとを記憶する。
ＦＩＧ．１８は、切替クライアントキーセットテーブルの例を示す図である。ＦＩＧ．１８を用いて切替クライアントキーセットテーブルについて説明する。なお、以下では”Ｐａ＃１”という鍵によって暗号化されたデータ”Ａ”は、”Ｘ（Ｐａ＃１，Ａ）”と表現する。
切替クライアントキーセットテーブルは、ローカル局２Ａが、クライアント４Ａによって使用されるクライアントキーセット（クライアント公開鍵とクライアント秘密鍵）を変更する際に使用される。切替クライアントキーセットテーブルは、クライアント４Ａ及びローカル局２Ａによって現在使用されているクライアント公開鍵と、クライアント４Ａ及びローカル局２Ａによって今後（鍵切替処理後）使用される切替クライアントキーセット（切替クライアント公開鍵と切替クライアント秘密鍵）と、切替完了時刻とを対応付けて持つ。切替クライアントキーセットテーブルは、切替クライアント秘密鍵として、クライアント公開鍵によって暗号化されたデータを保持する。
ＦＩＧ．１９は、切替ローカル局キーセットテーブルの例を示す図である。ＦＩＧ．１９を用いて、切替ローカル局キーセットテーブルについて説明する。切替ローカル局キーセットテーブルは、クライアント４Ａ及びローカル局２Ａによって現在使用されているローカル局キーセット（ローカル局公開鍵とローカル局秘密鍵）と、クライアント４Ａ及びローカル局２Ａによって今後（鍵切替処理後）使用される切替ローカル局キーセット（切替ローカル局公開鍵と切替ローカル局秘密鍵）と、切替完了時刻とを対応付けて持つ。
クライアントキーセットとローカル局キーセットとは、対応する切替完了時刻まで使用される。切替完了時刻後は、切替クライアントキーセットと切替ローカル局キーセットとが使用される。
〈〈暗号化部〉〉
暗号化部１９Ａは、暗号化データに電子サインを加える点と鍵切換処理を実行する点とで、ローカル局２に備えられる暗号化部１９と異なる。暗号化部１９Ａは、上記の二点を除いては、ローカル局２に備えられる暗号化部１９と同じ構成である。
暗号化部１９Ａは、ローカル局秘密鍵を用いて、暗号化データに電子サインを加える。この電子サインにより、クライアント４は、受信された暗号化データがローカル局２Ａによって暗号化され送信されたデータであることを認証する。
また、暗号化部１９Ａは、鍵切替処理を実行する。ＦＩＧ．２０は、鍵切替処理の際に暗号化部１９Ａによって作成される暗号化データの内容を示す図である。暗号化部１９Ａは、鍵切替処理を実行する際、暗号化データに切替鍵データを付加する。切替鍵データは、切替クライアント公開鍵，切替クライアント秘密鍵，及び切替ローカル局公開鍵を含む。切替鍵データに含まれる鍵のデータは、暗号化データとしてクライアント４に通知され、クライアント４において保持・使用される。
〈〈切替鍵生成部〉〉
切替鍵生成部２２は、切替クライアントキーセットテーブルと切替ローカルキーセットテーブルとに新たなレコードを生成するプログラムが、ローカル局２ＡのＣＰＵによって実行されることにより実現される。ここで、切替クライアントキーセットテーブルにおけるレコードとは、切替クライアントキーセットテーブルのエントリ（クライアント公開鍵，切替クライアント公開鍵，暗号化された切替クライアント秘密鍵，及び切替完了時刻を対応付けて持つ）を示す。また、切替ローカル局キーセットテーブルのレコードとは、切替ローカル局キーセットとローカル局キーセットと切替完了時刻とを対応付けて持つエントリを示す。
切替鍵生成部２２は、公開先情報記憶部１６に記憶される任意のクライアント公開鍵を選択する。切替鍵生成部２２は、選択されたクライアント公開鍵に対応するレコードを生成する。即ち、切替鍵生成部２２は、選択されたクライアント公開鍵に対応する切替クライアントキーセットを生成する。そして、切替鍵生成部２２は、生成されたレコードを切替鍵記憶部２１に書き込む。
また、切替鍵生成部２２は、新たなローカル局キーセットを生成する。このとき、切替鍵生成部２２は、切替鍵記憶部２１に記憶される切替ローカル局公開鍵及び切替ローカル局秘密鍵を、ローカル局公開鍵及びローカル局秘密鍵に置き換える。そして、切替鍵生成部２２は、新たに生成されたローカル局キーセットを、切替鍵記憶部２１の切替ローカル局公開鍵及び切替ローカル局秘密鍵に設定する。
このような切替鍵生成部２２の動作は、定期的に実行されるように構成されても良いし、各鍵の有効期間を考慮して実行されるように構成されても良い。
〈クライアント〉
次に、クライアント４Ａの構成について説明する。クライアント４Ａは、クライアント４における復号化部１０の代わりに、復号化部１０Ａを備える。上記の点を除き、クライアント４Ａの構成はクライアント４と同様の構成となる。
〈〈復号化部〉〉
復号化部１０Ａは、電子サインを用いた暗号化データの認証を行う点と鍵切替処理を実行する点とで復号化部１０と異なる。復号化部１０Ａは、ローカル局２Ａから暗号化データが受信されると、受信された暗号化データの作成者についての認証を行う。復号化部１０Ａは、受信された暗号化データに含まれるローカル局電子サインと、自装置４Ａの鍵記憶部８に記憶されるローカル局公開鍵とを用いて、認証を行う。
また、復号化部１０Ａは、ローカル局２から、切替鍵データを含む暗号化データを受信すると、鍵切替処理を実行する。復号化部１０Ａは、鍵切替処理の際には、受信された切替鍵データのデータを、鍵記憶部８に反映させる。この場合、復号化部１０Ａは、鍵記憶部８に記憶されるクライアント公開鍵，クライアント秘密鍵，及びローカル局公開鍵を、受信された切替鍵データの切替クライアント公開鍵，切替クライアント秘密鍵，及び切替ローカル局公開鍵に置き換える。
〔動作例〕
次に、放送システム１Ａの構成の動作例について、放送システム１における動作例と異なる点についてのみ説明する。まず、ローカル局２Ａの動作例について説明する。
〈ローカル局〉
切替鍵記憶部２１は、データの読み書きが実施される対象として動作する。このように、切替鍵記憶部２１の動作は、データの記憶内容などに特徴的な部分があるとしても、その動作は本発明による特徴的な動作ではない。また、ローカル局２Ａの切替鍵記憶部２１，切替鍵生成部２２，及び暗号化部１９Ａを除く構成は、ローカル局２の構成と同じである。このため、以下では、暗号化部１９Ａと切替鍵生成部２２の動作例についてのみ説明する。
〈〈暗号化部〉〉
ＦＩＧ．２１〜２４は、暗号化部１９Ａの動作例を示すフローチャートである。ＦＩＧ．２１〜２４を用いて暗号化部１９Ａの動作例について説明する。
暗号化部１９Ａは、インデックスと呼ばれる変数を記憶領域上に生成し、インデックスを初期化する（Ｓ３９：ＦＩＧ．２１参照）。初期化の具体的な処理は、プログラムの実装に応じてどのように構成されても良い。ここでは、例として、インデックスとは整数値のいずれかを有する変数であり、インデックスの初期化とはインデックスに０を代入することであるとする。
暗号化部１９Ａは、切替クライアントキーセットテーブルにおいて、インデックスに対応するレコード（エントリ）の有無を調べる。該当するレコードが無い場合（Ｓ４０−Ｎｏ）、暗号化部１９Ａは、インデックスを初期化する（Ｓ４１）。一方、該当するレコードが有る場合（Ｓ４０−Ｙｅｓ）又はＳ４１の処理の後、暗号化部１９Ａは、供給部２０から１パケット分の平文データを受領する（Ｓ４２）。次に、暗号化部１９Ａは、ローカル局２Ａの不図示の計時部から、現在時刻を受領する（Ｓ４３）。暗号化部１９Ａは、暗号化情報記憶部１８に記憶される暗号化コードのうち、その有効期限が、受領された現在時刻に対応する暗号化コードを検索し取得する（Ｓ４４）。暗号化部１９Ａは、取得された暗号化コードを用いて、受領された平文データを暗号化し、暗号化ストリーミングデータを生成する（Ｓ４５）。暗号化部１９Ａは、受領された現在時刻を、暗号化データのタイムスタンプに設定する（Ｓ４６）。また、暗号化部１９Ａは、生成された暗号化ストリーミングデータを、暗号化データの暗号化ストリーミングデータとして設定する（Ｓ４７）。
次に、暗号化部１９Ａは、切替クライアントキーセットテーブルにおいて、インデックスに対応するレコード（エントリ）の有無を調べる。該当するレコードが無い場合（Ｓ４８−Ｎｏ：ＦＩＧ．２２参照）、暗号化部１９Ａは、Ｓ５６（ＦＩＧ．２３参照）以降の処理を行う。この処理については後述する。
一方、該当するレコードが有る場合（Ｓ４８−Ｙｅｓ：ＦＩＧ．２２参照）、暗号化部１９Ａは、インデックスに対応するレコードについて切替完了時刻が設定されているか否かを確認する。切替完了時刻が設定されていない場合（Ｓ４９−Ｎｏ）、暗号化部１９Ａは、現在時刻を用いて切替完了時刻を算出し、算出された切替完了時刻を設定する（Ｓ５０）。具体的には、全てのクライアント４Ａにおいて鍵切替処理が完了すると想定される時間（例えば数分）を現在時刻に加算することにより切替完了時刻が算出される。言い換えれば、復号化部１０Ａは、この加算される時間の間、鍵切替処理を実行する。一方、切替完了時刻が設定されている場合（Ｓ４９−Ｙｅｓ）、又はＳ５０の処理の後、暗号化部１９Ａは、該当するレコードのクライアント公開鍵を、暗号化データのクライアント公開鍵に設定する（Ｓ５１）。また、暗号化部１９Ａは、該当するレコードの切替クライアント公開鍵と切替クライアント秘密鍵とを、暗号化データの切替クライアント公開鍵と切替クライアント秘密鍵とに設定する（Ｓ５２）。
次に、暗号化部１９Ａは、該当するレコードの切替完了時刻と現在時刻とを比較する。切替完了時刻が現在時刻よりも未来の時刻である場合（Ｓ５３−Ｎｏ：ＦＩＧ．２３参照）、暗号化部１９Ａは、インデックスを更新する（Ｓ５４）。インデックスの更新とは、具体的には、インデックスが、切替クライアントキーセットテーブルにおいて、該当しているレコードの他のレコードを指し示すようにインデックスの値を変更することである。一方、切替完了時刻が現在時刻よりも過去の時刻である場合（Ｓ５３−Ｙｅｓ）、暗号化部１９Ａは該当するレコードを切替クライアントキーセットテーブルから削除する（Ｓ５５）。
Ｓ５４の処理の後、又はＳ５５の処理の後、又はＳ４８−Ｎｏ（ＦＩＧ．２２参照）の場合、暗号化部１９Ａは、切替ローカル局キーセットテーブルに、ローカル局公開鍵とローカル局秘密鍵とが登録されているか否かを確認する。登録が無い場合（Ｓ５６−Ｎｏ）、暗号化部１９Ａは、Ｓ６４（ＦＩＧ．２４参照）以降の処理を実行する。この処理については後述する。一方、登録がある場合（Ｓ５６−Ｙｅｓ：ＦＩＧ．２３参照）、暗号化部１９Ａは、切替ローカル局キーセットテーブルに切替完了時刻の設定があるか否かを確認する。切替完了時刻が設定されていない場合（Ｓ５７−Ｎｏ）、暗号化部１９Ａは、切替完了時刻を算出し設定する（Ｓ５８）。一方、切替完了時刻の設定が有る場合（Ｓ５７−Ｙｅｓ）、又はＳ５５の処理の後、暗号化部１９Ａは、切替ローカル局キーセットテーブルの切替ローカル局公開鍵を、暗号化データの切替ローカル局公開鍵に設定する（Ｓ５９：ＦＩＧ．２４参照）。
次に、暗号化部１９Ａは、切替ローカル局キーセットテーブルのローカル局秘密鍵を用いて、暗号化データに電子サインを付加する（Ｓ６０）。そして、暗号化部１９Ａは、電子サインが付加された暗号化データを、クライアント４Ａに送信する（Ｓ６１）。
次に、暗号化部１９Ａは、切替ローカル局キーセットテーブルの切替完了時刻と現在時刻とを比較する。切替完了時刻が現在時刻よりも過去の時刻である場合（Ｓ６２−Ｙｅｓ）、暗号化部１９Ａは、切替ローカル局キーセットテーブルのローカル局公開鍵，ローカル局秘密鍵，及び切替完了時刻を初期化する（Ｓ６３）。具体的には、暗号化部１９Ａは、ローカル局公開鍵，ローカル局秘密鍵，及び切替完了時刻が設定されていないことを示す値（例：ゼロ値，ＮＵＬＬ）を各値に代入する。
一方、切替完了時刻が現在時刻よりも未来の時刻である場合（Ｓ６２−Ｎｏ）、又はＳ６３の処理の後、又はＳ５６−Ｎｏの場合（ＦＩＧ．２３参照）、暗号化部１９Ａは、切替ローカル局キーセットテーブルの切替ローカル局秘密鍵を用いて、暗号化データに電子サインを付加する（Ｓ６４）。ここで、電子サインが付加される暗号化データは、Ｓ６１の処理で送信される暗号化データと電子サインのみが異なるデータである。そして、暗号化部１９Ａは、電子サインが付加された暗号化データをクライアント４Ａに送信し（Ｓ６５）、Ｓ４０以降の処理（ＦＩＧ．２１参照）を実行する。
〈〈切替鍵生成部〉〉
ＦＩＧ．２５は、切替鍵生成部２２の動作例を示すフローチャートである。ＦＩＧ．２５を用いて、切替鍵生成部２２の動作例について説明する。
切替鍵生成部２２は、公開先情報記憶部１６に記憶されるクライアント公開鍵から、任意のクライアント公開鍵（例：Ｐａ＃２）を選択する（Ｓ７９）。例えば、切替鍵生成部２２は、有効期限が迫っている（例えば有効期限まで数分）クライアント公開鍵を選択する。
次に、切替鍵生成部２２は、切替クライアント公開鍵（例：Ｐａ＃３）と切替クライアント秘密鍵（例：ＰＡ＃３）とを生成する（Ｓ８０）。切替鍵生成部２２は、生成された切替クライアント秘密鍵を、選択されたクライアント公開鍵を用いて暗号化する（Ｓ８１）。そして、切替鍵生成部２２は、選択されたクライアント公開鍵と、生成された切替クライアント公開鍵と、暗号化された切替クライアント秘密鍵（例：Ｘ（Ｐａ＃２，ＰＡ＃３））とを対応付けて、切替鍵記憶部２１に書き込む（Ｓ８２）。
〈クライアント〉
クライアント４Ａの復号化部１０Ａを除く構成は、クライアント４の構成と同じである。このため、以下では、復号化部１０Ａの動作例についてのみ説明する。
〈〈復号化部〉〉
ＦＩＧ．２６，２７は、復号化部１０Ａの動作例を示すフローチャートである。ＦＩＧ．２６，２７を用いて復号化部１０Ａの動作例について説明する。
復号化部１０Ａは、暗号化データを受信すると（Ｓ６６：ＦＩＧ．２６参照）、鍵記憶部８に記憶されるローカル局公開鍵を用いて暗号化データの作成者についての認証を行う（Ｓ６７）。認証が失敗すると（Ｓ６８−ＮＧ）、復号化部１０Ａは、Ｓ６６の処理に戻る。一方、認証が成功すると（Ｓ６８−ＯＫ）、復号化部１０Ａは、受信された暗号化データに、切替ローカル局公開鍵が設定されているか（含まれているか）否かを確認する。切替ローカル局公開鍵が設定されている場合（Ｓ６９−Ｙｅｓ）、復号化部１０Ａは、この切替ローカル局公開鍵を、自装置４Ａの鍵記憶部８のローカル局公開鍵として設定する（Ｓ７０）。
一方、暗号化データに切替ローカル局公開鍵が設定されていない場合（Ｓ６９−Ｎｏ）、又はＳ７０の処理の後、復号化部１０Ａは、暗号化データに含まれるクライアント公開鍵と、自装置４Ａの鍵記憶部８に記憶されるクライアント公開鍵とが一致するか否かを確認する。一致しない場合（Ｓ７１−Ｎｏ）、復号化部１０Ａは、Ｓ７５以降の処理（ＦＩＧ．２７参照）を実行する。
一方、一致する場合（Ｓ７１−Ｙｅｓ：ＦＩＧ．２６参照）、復号化部１０Ａは、暗号化データに含まれる切替鍵データを、自装置４Ａの鍵記憶部８に記憶されるクライアント秘密鍵を用いて復号化する（Ｓ７２）。復号化部１０Ａは、復号化ができなかった場合（Ｓ７３−ＮＧ：ＦＩＧ．２７参照）、Ｓ７５以降の処理を行う。一方、復号化部１０Ａは、復号化できた場合（Ｓ７３−ＯＫ）、復号化された切替鍵データの内容を、鍵記憶部８に設定する（Ｓ７４）。即ち、復号化部１０Ａは、復号化された切替鍵データに含まれる切替クライアント公開鍵，切替クライアント秘密鍵，及び切替ローカル局公開鍵を、鍵記憶部８に記憶されるクライアント公開鍵，クライアント秘密鍵，及びローカル局公開鍵に設定する。
Ｓ７４の処理の後、又はＳ７３−ＮＧの場合、又はＳ７１−Ｎｏの場合（ＦＩＧ．２６参照）、復号化部１０Ａは、暗号化データに含まれるタイムスタンプを読み出し取得する（Ｓ７５）。次に、復号化部１０Ａは、取得されたタイムスタンプをキーとして、復号化情報記憶部９に記憶される有効期限を検索し、対応する復号化コードを得る。即ち、復号化部１０は、取得されたタイムスタンプが示す日時に有効である復号化コードを取得する（Ｓ７６）。次に、復号化部１０Ａは、取得された復号化コードを用いて、受信された暗号化データに含まれる暗号化ストリーミングデータを復号化し、ストリーミングデータの平文データを取得する（Ｓ７７）。そして、復号化部１０Ａは、取得された平文データを表示部１１へ渡す（Ｓ７８）。こうして、表示部１１により、ローカル局２Ａから受信されたストリーミングデータが表示される。Ｓ７８の処理の後、復号化部１０Ａは、Ｓ６６以降の処理を実行する。
〔動作シーケンス〕
次に、放送システム１Ａの動作シーケンスのうち、切替クライアントキーセットと切り替えローカル局キーセットとのそれぞれが切り替えられる際の処理について説明する。
〈切替クライアントキーセットの場合〉
ＦＩＧ．２８は、切替クライアントキーセットが切り替えられる際の処理を示すシーケンス図である。切替鍵生成部２２が新たなレコードを切替鍵記憶部２１に登録すると、暗号化部１９Ａは、クライアント公開鍵（Ｐａ＃１），切替クライアント公開鍵（Ｐａ＃４），及び切替クライアント秘密鍵（ＰＡ＃４）が付加された暗号化データをクライアント４Ａに送信する（Ｓｅｑ１６）。クライアント４Ａの復号化部１０Ａは、この暗号化データが受信されると、付加されている情報を用いて、鍵記憶部８に記憶される鍵のデータを更新する。以下、一定時間（切替クライアントキーセットテーブルに設定された切替完了時刻まで）、このような暗号化データが送信される（Ｓｅｑ１７）。
〈切替ローカル局キーセットの場合〉
ＦＩＧ．２９は、切替ローカル局キーセットが切り替えられる際の処理を示すシーケンス図である。暗号化部１９Ａは、暗号化データを送信する際に、ローカル局秘密鍵（ＰＢ＃１）を用いて電子サイン（Ｓ（ＰＢ＃１））を付加する（Ｓｅｑ１９，２０）。切替鍵生成部２２が新たなレコードを切替鍵記憶部２１に登録すると、暗号化部１９Ａは、新たに生成された切替ローカル局公開鍵（Ｐｂ＃４）を暗号化データに付加して送信する（Ｓｅｑ２１）。
クライアント４Ａの復号化部１０Ａは、切替ローカル局公開鍵が付加された暗号化データを受信すると、付加されている切替ローカル局公開鍵を用いて鍵記憶部８の内容を更新する。
暗号化部１９Ａは、切替鍵記憶部２１に新たなレコードが生成された後は、切替ローカル局秘密鍵（ＰＢ＃４）による電子サイン（Ｓ（ＰＢ＃４））が付加された暗号化データと、ローカル局秘密鍵（ＰＢ＃１）による電子サイン及び切替ローカル局公開鍵（Ｐｂ＃４）が付加された暗号化データとが送信される（Ｓｅｑ２２，２３，２４）。
切替完了時刻の経過後は、暗号化部１９Ａは、新たなレコードにおける公開鍵（ＰＢ＃４）による電子サイン（Ｓ（ＰＢ＃４））が付加された暗号化データを送信する（Ｓｅｑ２５，２６）。
〔作用／効果〕
本発明の第二実施形態では、クライアントキーセット及びローカル局キーセットの入れ替えが行われる。一般的に、暗号鍵（公開鍵及び秘密鍵）は、その利用期間が長期化するほど漏洩の可能性が高くなる。従って、クライアントキーセット及びローカル局キーセットの入れ替えが行われることにより、これらの漏洩を防止することが可能となる。
また、切替クライアントキーセット及び切替ローカル局公開鍵のクライアント４Ａへの通知は、現行のローカル局秘密鍵を用いて行われる。このため、現行のローカル局公開鍵が漏洩していない限り、切替クライアントキーセット及び切替ローカル局公開鍵の漏洩は防止される。
また、切替クライアントキーセット及び切替ローカル局公開鍵のクライアント４Ａへの通知は、暗号化データとして行われる。即ち、これらの鍵のデータを含む暗号化データが、クライアント４Ａに送信される。そして、クライアント４Ａの復号化部１０Ａは、暗号化データに含まれるこれらの鍵のデータを用いて、鍵記憶部８の記憶内容の更新を行う。このため、クライアント４Ａのユーザは、鍵が更新された場合に、改めて放送受信アプレットをダウンロードする必要がない。同様に、クライアント４Ａのユーザは、鍵を更新するための手続きを行う必要がない。
【産業上の利用可能性】  本発明は、不正取得の防止を必要とするコンテンツ（例えば、有料放送のコンテンツ）を不特定多数に対して配信するサービスを提供する産業に適用可能である。
【図１】
2004075475.tif 000003
【図２】
2004075475.tif 000004
【図３】
2004075475.tif 000005
【図４】
2004075475.tif 000006
【図５】
2004075475.tif 000007
【図６】
2004075475.tif 000008
【図７】
2004075475.tif 000009
【図８】
2004075475.tif 000010
【図９】
2004075475.tif 000011
【図１０】
2004075475.tif 000012
【図１１】
2004075475.tif 000013
【図１２】
2004075475.tif 000014
【図１３】
2004075475.tif 000015
【図１４】
2004075475.tif 000016
【図１５】
2004075475.tif 000017
【図１６】
2004075475.tif 000018
【図１７】
2004075475.tif 000019
【図１８】
2004075475.tif 000020
【図１９】
2004075475.tif 000021
【図２０】
2004075475.tif 000022
【図２１】
2004075475.tif 000023
【図２２】
2004075475.tif 000024
【図２３】
2004075475.tif 000025
【図２４】
2004075475.tif 000026
【図２５】
2004075475.tif 000027
【図２６】
2004075475.tif 000028
【図２７】
2004075475.tif 000029
【図２８】
2004075475.tif 000030
【図２９】
2004075475.tif 000031
【国際調査報告】
2004075475.tif 000032
2004075475.tif 000033
2004075475.tif 000034
2004075475.tif 000035