JP4423517B2 - Data processing apparatus, data processing method, and recording medium - Google Patents

Data processing apparatus, data processing method, and recording medium Download PDF

Info

Publication number
JP4423517B2
JP4423517B2 JP31452199A JP31452199A JP4423517B2 JP 4423517 B2 JP4423517 B2 JP 4423517B2 JP 31452199 A JP31452199 A JP 31452199A JP 31452199 A JP31452199 A JP 31452199A JP 4423517 B2 JP4423517 B2 JP 4423517B2
Authority
JP
Japan
Prior art keywords
entry
data
key
valid
registered
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP31452199A
Other languages
Japanese (ja)
Other versions
JP2001136507A (en
Inventor
正光 赤池
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP31452199A priority Critical patent/JP4423517B2/en
Priority to US09/869,515 priority patent/US7069436B1/en
Priority to EP00971709A priority patent/EP1143659A4/en
Priority to KR1020017008446A priority patent/KR100798196B1/en
Priority to PCT/JP2000/007682 priority patent/WO2001033771A1/en
Priority to CN008024952A priority patent/CN1336053B/en
Publication of JP2001136507A publication Critical patent/JP2001136507A/en
Application granted granted Critical
Publication of JP4423517B2 publication Critical patent/JP4423517B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、データ処理装置およびデータ処理方法、並びに記録媒体に関し、特に、例えば、データを、衛星回線等によって同報する場合に、そのデータを取得することのできる端末(ユーザ)を、容易に制限することができるようにするデータ処理装置およびデータ処理方法、並びに記録媒体に関する。
【0002】
【従来の技術】
例えば、画像や音声等をディジタルデータで伝送する場合には、アナログ信号で伝送する場合と同一の伝送帯域で複数チャンネルを確保したり、また、より高品質の画像や音声を提供することが可能であり、衛星放送あるいは衛星通信等の分野では、画像や音声をディジタルデータで提供するシステムの普及が進んでいる。例えば、国内ではSkyPerfecTV!やDirecTV、北米ではDirecTV、欧州ではCanal Plus、といったディジタル衛星放送サービスが、それぞれ開始されている。放送のディジタル化は、1チャンネル当たりの送信コストの低減や、コンピュータで扱われるプログラムやデータの提供等を可能とし、また、ディジタル化により、プログラム等と画像等とを連動して提供するようなサービスも普及しつつある。
【0003】
ディジタル衛星放送サービスでは、画像や音声のディジタルデータが、MPEG(Moving Picutre Experts Group)2や、このMPEG2から派生したDVB(Digital Video Broadcasting)の規格に準拠したフォーマットに変換され、さらに多重化されて、電波として送信される。電波は、衛星のトランスポンダで受信され、増幅その他の必要な処理が施された後、地上に向けて送出される。
【0004】
トランスポンダの伝送帯域は、例えば、30Mbps(Mega bit per second)と大きく(但し、トランスポンダでは、一般に、エラー訂正符号が付加されるので、30Mbpsの伝送帯域を有していても、実質的な伝送帯域は、最大で27Mbps程度)、このような大きな伝送帯域の全部を利用することで、ディジタルデータを、高品位で、かつ高速に配信することが可能である。
【0005】
しかしながら、一般には、主に、コスト上の理由から、トランスポンダの伝送帯域は、多チャンネルに分割されて使用されることが多い。この場合、各チャンネルで伝送されるディジタルデータの内容は異なっていても、各チャンネルのディジタルデータを受信する受信側の仕組みは共通であるため、あるディジタルデータの提供を、特定のユーザだけが受けることができるような限定受信(CA(Conditional Access))機構が必要となる。
【0006】
即ち、特に、例えば、いわゆるデータ放送を行う場合には、画像や音声を配信する場合に比較して、1番組当たりのデータ量が小さく、課金単位あるいは課金形態が複雑になることが予想され、これに対処するには、より細かな受信制御を行うことができる限定受信機構が必要となる。また、限定受信機構は、機密情報を配信する場合にも、その漏洩を防止するために必要となる。
【0007】
一般に、限定受信機構は、配信するデータストリームに対して暗号化を施すことによって実現される。暗号化方式としては、大きく分けて、共通鍵暗号化方式(秘密鍵暗号化方式)と、公開鍵暗号化方式とが知られている。ディジタル衛星放送では、暗号化/復号の処理の負荷が、公開鍵暗号化方式に比較して軽いことから、共通鍵暗号化方式が用いられることが多い。
【0008】
共通鍵暗号化方式では、ある契約者Aに対して、暗号鍵と同一の、復号鍵となる符号列を何らかの方法で渡し、データが、暗号鍵で暗号化されて配信される。暗号化されたデータは、それから、暗号鍵(復号鍵)や元のデータを逆計算する等して類推することが困難なようになっており、従って、契約者でないユーザBは、暗号化されたデータを受信しても、それを、元のデータに正しく復元することはできない。また、契約者であるユーザAは、暗号化されたデータを、契約することにより渡された復号鍵で復号することにより、元のデータを復元することができる。従って、受信契約とは、復号鍵の引き渡しを行うことと等価である。
【0009】
【発明が解決しようとする課題】
ところで、例えば、いま、ユーザAとCが契約者である場合において、ユーザAだけとの契約が終了したり、あるいは、ユーザAが不正な行為をしたときには、いままで使用していた暗号鍵を変更し、その変更後の暗号鍵と同一の復号鍵を、ユーザCのみに提供すれば、その後は、契約者でなくなった、あるいは不正な行為を行ったユーザAは、新たな暗号鍵で暗号化されたデータを復元することができなくなるとともに、正当な契約者であるユーザCは、続けて、新たな暗号鍵で暗号化されたデータを、新たな復号鍵で復号することにより正常に復元することができる。
【0010】
しかしながら、あるユーザの契約が終了したり、不正な行為を発見するごとに、暗号鍵を変更し、さらに、変更後の暗号鍵と同一の復号鍵を、正当な契約者に提供するのは面倒である。
【0011】
本発明は、このような状況に鑑みてなされたものであり、データを正常に取得する(受信する)ことのできるユーザを、容易に制限することができるようにするものである。
【0012】
【課題を解決するための手段】
本発明のデータ処理装置は、宛先と、登録されているそのエントリが有効であるかどうかを表すエントリ有効情報と、エントリに登録された宛先に割り当てられた鍵と、エントリに登録された宛先に割り当てられた鍵が有効かどうかを表す鍵有効情報とが登録されているエントリを有するテーブルを記憶する記憶手段と、記憶手段に記憶されているテーブルから、データブロックの宛先に一致する宛先を有するエントリを検索する検索手段と、検索手段による検索の結果得られたエントリである注目エントリに登録されたエントリ有効情報に基づいて、注目エントリが有効かどうかを判定し、注目エントリに登録された鍵有効情報に基づいて、注目エントリの鍵が有効かどうかを判定する判定手段と、判定手段において、注目エントリが有効であると判定された場合、注目エントリの鍵が有効であると判定されたとき、データブロックに配置されたデータであって、注目エントリに登録されている鍵を用いて復号されたデータをデータブロックに配置された宛先に出力し、判定手段において注目エントリが有効でないと判定された場合、データを破棄し、判定手段において注目エントリの鍵が有効でないと判定された場合、データを破棄するように、データブロックに配置されたデータの出力を制御する出力制御手段とを備えることを特徴とする。
【0014】
注目エントリに登録されている鍵を用いて、暗号化されているデータを復号する復号手段をさらに設けることができる。
【0018】
テーブルの各エントリには、エントリに登録された宛先に割り当てられた2以上の鍵も登録することができる。
【0019】
テーブルの各エントリには、2以上鍵それぞれについて、その鍵が有効かどうかを表す鍵有効情報も登録することができる。
【0023】
本発明のデータ処理装置は、1チップのIC(Integrated Circuit)で構成することができる。
【0024】
本発明のデータ処理方法は、記憶手段に、宛先と、登録されているそのエントリが有効であるかどうかを表すエントリ有効情報と、エントリに登録された宛先に割り当てられた鍵と、エントリに登録された宛先に割り当てられた鍵が有効かどうかを表す鍵有効情報とが登録されているエントリを有するテーブルを記憶する記憶ステップと、検索手段により、記憶手段に記憶されているテーブルから、データブロックの宛先に一致する宛先を有するエントリを検索する検索ステップと、判定手段により、検索ステップの検索の結果得られたエントリである注目エントリに登録されたエントリ有効情報に基づいて、注目エントリが有効かどうかを判定し、注目エントリに登録された鍵有効情報に基づいて、注目エントリの鍵が有効かどうかを判定する判定ステップと、出力制御手段により、判定ステップにおいて、注目エントリが有効であると判定された場合、注目エントリの鍵が有効であると判定されたとき、データブロックに配置されたデータであって、注目エントリに登録されている鍵を用いて復号されたデータをデータブロックに配置された宛先に出力し、判定ステップにおいて注目エントリが有効でないと判定された場合、データを破棄し、判定ステップにおいて注目エントリの鍵が有効でないと判定された場合、データを破棄するように、データブロックに配置されたデータの出力を制御する出力制御ステップとを含むことを特徴とする。
【0025】
本発明の記録媒体は、宛先と、登録されているそのエントリが有効であるかどうかを表すエントリ有効情報と、エントリに登録された宛先に割り当てられた鍵と、エントリに登録された宛先に割り当てられた鍵が有効かどうかを表す鍵有効情報とが登録されているエントリを有するテーブルであって、記憶手段に記憶されているテーブルから、データブロックの宛先に一致する宛先を有するエントリを検索する検索ステップと、検索ステップの検索の結果得られたエントリである注目エントリに登録されたエントリ有効情報に基づいて、注目エントリが有効かどうかを判定し、注目エントリに登録された鍵有効情報に基づいて、注目エントリの鍵が有効かどうかを判定する判定ステップと、判定ステップにおいて、注目エントリが有効であると判定された場合、注目エントリの鍵が有効であると判定されたとき、データブロックに配置されたデータであって、注目エントリに登録されている鍵を用いて復号されたデータをデータブロックに配置された宛先に出力し、判定ステップにおいて注目エントリが有効でないと判定された場合、データを破棄し、判定ステップにおいて注目エントリの鍵が有効でないと判定された場合、データを破棄するように、データブロックに配置されたデータの出力を制御する出力制御ステップとを含むデータ処理を、コンピュータに行わせるプログラムが記録されていることを特徴とする。
【0026】
本発明のデータ処理装置およびデータ処理方法、並びに記録媒体においては、宛先と、登録されているそのエントリが有効であるかどうかを表すエントリ有効情報と、エントリに登録された宛先に割り当てられた鍵と、エントリに登録された宛先に割り当てられた鍵が有効かどうかを表す鍵有効情報とが登録されているエントリを有するテーブルであって、記憶手段に記憶されているテーブルから、データブロックの宛先に一致する宛先を有するエントリが検索され、検索の結果得られたエントリである注目エントリに登録されたエントリ有効情報に基づいて、注目エントリが有効かどうかが判定され、注目エントリに登録された鍵有効情報に基づいて、注目エントリの鍵が有効かどうかが判定され、注目エントリが有効であると判定された場合、注目エントリの鍵が有効であると判定されたとき、データブロックに配置されたデータであって、注目エントリに登録されている鍵を用いて復号されたデータがデータブロックに配置された宛先に出力され、注目エントリが有効でないと判定された場合、データが破棄され、注目エントリの鍵が有効でないと判定された場合、データが破棄される。
【0027】
【発明の実施の形態】
図1は、本発明を適用した放送システム(システムとは、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは問わない)の一実施の形態の構成例を示している。
【0028】
図1の実施の形態においては、放送システムは、送信システム1、衛星2、受信システム3、およびネットワーク4から構成されている。なお、図1では、図が煩雑になるのを避けるため、1の受信システム(受信システム3)しか図示していないが、受信システムは、2以上設けることが可能である。
【0029】
送信システム1は、制御装置11、データサーバ12、送信処理装置13、アンテナ14、回線接続装置15、およびケーブル16で構成され、制御装置11、データサーバ12、送信処理装置13、および回線接続装置15は、ケーブル16を介して相互に接続されることで、LAN(Local Area Network)を構成している。
【0030】
制御装置11は、データサーバ12を制御することにより、送信処理装置13に対して、衛星放送で配信すべきデータを供給させる。また、制御装置11は、回線接続装置15を制御することにより、インターネット等の外部のネットワーク4から、衛星放送で配信すべきデータを取得させ、送信処理装置13に対して供給させる。さらに、制御装置11は、送信処理装置13における各種の処理を制御する。
【0031】
データサーバ12は、衛星放送で配信すべきデータを記憶しており、制御装置11の制御にしたがって、必要なデータを、送信処理装置13に供給する。
【0032】
送信処理装置13は、制御装置11の制御にしたがい、データサーバ12や回線接続装置15から供給されるデータを、例えば、IP(Internet Protocol)パケットにパケット化し、さらに、そのIPパケットを、DVBデータ放送仕様に準拠したセクション、即ち、例えば、EN 301 192 V1.1.1(1997-12), DVB specification for data broadcasting ETSI(European Telecommunications Standards Institute)で規定されているマルチプロトコルエンキャプスレイション(Multiprotocol Encapsulation)に基づくディスクリプタで記述されたセクションと呼ばれるデータブロックにブロック化する。そして、送信処理装置13は、セクションを、所定長のペイロードに分割し、各ペイロードに、MPEG2のトランスポートストリームを構成するパケット(以下、適宜、TS(Transport Stream)パケットという)のヘッダを付加することで、TSパケットに類するパケットを構成し、さらに、変調、増幅等の必要な処理を施して、アンテナ14から、衛星放送波として送出する。
【0033】
また、送信処理装置13は、受信システム3を構成する端末241,242,・・・(図1において図示していない受信システムを構成する端末についても同様)それぞれのMACアドレスと、各MAC(Media Access Control)アドレスに割り当てた暗号鍵とを対応付けた表形式の暗号鍵テーブルを記憶している暗号鍵テーブル記憶部13Aを有している。なお、各MACアドレスに割り当てる暗号鍵は、基本的には、すべて異なるものとする。但し、一部のMACアドレスについて、同一の暗号鍵を割り当てるようにしても良い。
【0034】
ここで、MACアドレスとは、IEEE(Institute of Electrical Electronics Engineers)802.3等に適用されるアドレス体系であり、通信ポートごとに固有の48ビットの値で、重複がないことが保証されている。48ビットのMACアドレスは、その上位24ビットが、IEEEによって登録/管理される製造者(ベンダ(vendor))識別番号となっており、その下位24ビットが、各ベンダによって管理される機器識別番号となっている。MACアドレスによれば、受信システム3の各端末24i(i=1,2,・・・)を特定することができる。
【0035】
上述のマルチプロトコルエンキャプスレイションによれば、セクションのヘッダ(セクションヘッダ)には、そのセクションのペイロードに配置されたデータを配信する端末24iの宛先として、その端末のMACアドレスが配置されるようになっている。セクションのペイロードに配置されるデータ、即ち、ここでは、IPパケットを暗号化する必要がある場合には、送信処理装置13は、セクションのヘッダに配置される宛先としての、端末24iのMACアドレスに割り当てられた暗号鍵を、暗号鍵テーブル記憶部13Aに記憶された暗号鍵テーブルから読み出し、その暗号鍵で、そのセクションのペイロードに配置されるIPパケットを暗号化するようになっている。
【0036】
なお、暗号鍵テーブルは、受信システム3を構成する、後述する受信装置22が有する鍵テーブルと同一形式のものであっても良いし、異なる形式のものであっても良い。また、ここでは、暗号鍵テーブルを、送信システム1に内蔵させておくようにしたが、暗号鍵テーブルは、例えば、ネットワーク4上の図示せぬサーバに記憶させておき、必要に応じて、回線接続装置15を介して読み出して使用するようにすることも可能である。
【0037】
回線接続装置15は、例えば、モデムや、TA(Terminal Adapter)およびDSU(Digital Service Unit)等で構成され、ネットワーク4を介しての通信制御を行うようになっている。
【0038】
受信システム3は、アンテナ21、受信装置22、回線接続装置23、端末241,242,・・・、およびケーブル25で構成されており、受信装置22、回線接続装置23、端末241,242,・・・は、ケーブル25を介して相互に接続され、これにより、例えば、イーサネット(商標)等のLANを構成している。
【0039】
なお、受信装置22や、端末241,242,・・・は、例えば、コンピュータで構成することができる。
【0040】
また、ここでは、受信装置22と、端末241,242,・・・とは、ケーブル25で相互に接続することにより、LANを構成させるようにしたが、受信装置22と、端末241,242,・・・とは、直接接続するようにすることも可能である。
【0041】
さらに、受信装置22は、1台の端末24iとしてのコンピュータのスロットに装着可能なボードとして構成することが可能である。
【0042】
また、受信装置22と回線接続装置23とは、1台のコンピュータで構成することが可能である。
【0043】
衛星2を介して、送信システム1から送信されてくる衛星放送波は、アンテナ21で受信され、その受信信号は、受信装置22に供給される。受信装置22は、アンテナ21からの受信信号に対して、後述するような処理を施し、その結果得られるデータを、所定の端末24iに供給する。
【0044】
回線接続装置23は、回線接続装置15と同様に構成され、ネットワーク4を介しての通信制御を行うようになっている。
【0045】
端末241,242,・・・は、例えば、コンピュータで構成され、受信装置22から必要なデータを受信して、表示、出力、あるいは記憶等するようになっている。
【0046】
次に、図2のフローチャートを参照して、送信システム1が行うデータの送信処理について説明する。
【0047】
まず最初に、ステップS1において、制御装置11は、端末24iに対して送信すべきデータがあるかどうかを判定する。
【0048】
ここで、制御装置11は、データを送信するスケジュールが記述されたスケジュール表を有しており、そのスケジュール表に基づいて、端末24iに対して送信すべきデータがあるかどうかを判定する。また、端末24iは、回線接続装置23を制御することにより、ネットワーク4を介して、送信システム1に対して、データを要求することができるようになっており、制御装置11は、そのような要求が、ネットワーク4を介して回線接続装置15で受信されたかどうかによって、端末24iに対して送信すべきデータがあるかどうかを判定する。
【0049】
ステップS1において、端末241に対して送信すべきデータがないと判定された場合、ステップS2に進み、制御装置11は、期間を変更するかどうかを判定する。
【0050】
ここで、送信システム1においては、暗号鍵テーブル記憶部13における暗号鍵テーブルに記述された暗号鍵が、定期的または不定期に更新されるようになっており、例えば、偶数回目の更新によって得られた暗号鍵を用いて暗号化が行われる期間が、Even期間と呼ばれ、奇数回目の更新によって得られた暗号化器を用いて暗号化が行われる期間が、Odd期間と呼ばれる。従って、Even期間とOdd期間とは交互に現れるが、ステップS2では、Even期間からOdd期間に、またはOdd期間からEven期間に変更する時期であるかどうかが判定される。
【0051】
ステップS2において、期間を変更しないと判定された場合、即ち、いま暗号化に用いている暗号鍵をそのまま用いて、データの暗号化を続行する場合、ステップS1に戻り、以下、上述の場合と同様の処理を繰り返す。
【0052】
また、ステップS2において、期間を変更すると判定された場合、即ち、いまが、Even期間であるときにはOdd期間に、Odd期間であるときにはEven期間に、期間を変更する場合、ステップS3に進み、制御装置11は、暗号鍵テーブルに記憶された暗号鍵を、後述するステップS4において前回生成された暗号鍵に更新し、これにより、その後は、送信処理装置13において、その更新された暗号鍵を用いて暗号化が行われる。
【0053】
そして、ステップS4に進み、制御装置11は、次の期間に用いる暗号鍵を生成し(あるいは取得し)、送信処理装置13に供給して、復号鍵として送信させ、ステップS1に戻り、以下、上述の場合と同様の処理が繰り返される。なお、復号鍵の送信は、衛星2を介して行う他、ネットワーク4を介して行うことも可能である。
【0054】
即ち、次の期間に用いる新たな復号鍵を、その、次の期間の開始直前に、受信システム3に送信したのでは、受信システム3において、新たな復号鍵の設定が、次の期間の開始までに間に合わないことがある。そこで、本実施の形態では、次の期間に用いる新たな暗号鍵は、その直前の期間において、受信システム3に対して配信されるようになっている。
【0055】
一方、ステップS1において、端末24iに対して送信すべきデータがあると判定された場合、制御装置11は、データサーバ12または回線接続装置15を制御することにより、その送信すべきデータを、送信処理装置13に供給させる。送信処理装置13は、データサーバ12または回線接続装置15から供給されるデータを受信し、IPパケットにパケット化して、ステップS5に進む。
【0056】
送信処理装置13は、ステップS5において、IPパケットが、暗号化の必要なものであるかどうかを判定し、暗号化の必要なものでないと判定した場合、ステップS6およびS7をスキップして、ステップS8に進む。
【0057】
また、ステップS5において、IPパケットが、暗号化の必要なものであると判定された場合、ステップS6に進み、送信処理装置13は、そのIPパケットの宛先となる端末24iのMACアドレスに割り当てられた暗号鍵を、暗号鍵テーブルから読み出し、ステップS7に進む。ステップS7では、送信処理装置13は、IPパケットを、ステップS6で読み出した暗号鍵で暗号化し、ステップS8に進む。
【0058】
ステップS8では、送信処理装置は、IPパケットについてCRC(Cyclic Redundancy Checking)コード(あるいは、チェックサム)を演算し、そのIPパケットをペイロードとして、その最後に、CRCコードを配置するとともに、その先頭に、セクションヘッダを配置することで、図3(A)に示すようなセクションを構成する。なお、ペイロードとCRCコードとの間には、必要に応じて、スタッフィングバイトが挿入される。
【0059】
セクションヘッダは、図3(B)に示すように、3バイト(96ビット)で構成される。ここで、セクションヘッダの詳細については、上述のEN 301 192 V1.1.1(1997-12)に記載されているため、その説明は省略するが、図3(B)におけるMAC address 1乃至6に、宛先となる48ビットのMACアドレスが配置される。ここで、MAC address 1には、MACアドレスの最上位ビットから8ビットが配置され、MAC address 2には、その次の上位8ビットが配置される。そして、MAC address 3乃至5それぞれに、同様にしてMACアドレスが8ビットずつ配置され、MAC address 6には、MACアドレスの最下位の8ビットが配置される。
【0060】
送信処理装置13は、セクションを構成した後、そのセクションを、所定長のペイロードに分割し、各ペイロードに、MPEG2のトランスポートストリームを構成するTSパケットのヘッダを付加することで、TSパケットに類するパケットを構成するカプセル化を行う。そして、送信処理装置13は、ステップS9に進み、その結果得られるパケット(このパケットは、基本的には、TSパケットと同様に処理することができるので、以下、適宜、TSパケットという)に対して、変調、増幅等の必要な処理を施して、アンテナ14から、衛星放送波として送出し、ステップS1に戻る。
【0061】
なお、図3(B)に示したセクションヘッダにおいて、その先頭から43ビット目と44ビット目の2ビットに配置される2ビットのPSC(payload_scrambling_control)は、例えば、セクションのペイロードに配置されたデータが暗号化されているかどうかを表す暗号化判定フラグ、およびそのデータが、Even期間またはOdd期間のうちのいずれの期間のものかを表す期間判定フラグとして用いられるようになっている。
【0062】
具体的には、例えば、PSCの下位ビットは、暗号化判定フラグとして用いられ、データが暗号化されているときには1に、暗号化されていないときには0とされる。また、PSCの上位ビットは、期間判定フラグとして用いられ、Even期間では0に、Odd期間では1にされる。但し、PSCの上位ビットを、暗号化判定フラグとして用いるとともに、その下位ビットを、期間判定フラグとして用いることも可能である。また、暗号化判定フラグの0と1の割り当てや、期間判定フラグの0と1の割り当ては、上述した場合と逆にすることも可能である。
【0063】
ここで、DVBの規格であるEN 301 192 V1.1.1(1997-12)では、PSCが、00B(Bは、その前に配置された値が2進数であることを表す)の場合が、データが暗号化されていないことを表すこととなっており、従って、暗号化判定フラグは、データが暗号化されているときには1に、暗号化されていないときには0とする方が、DVBの規格に反しないこととなるので望ましい。
【0064】
以上のように、図1の放送システムでは、各端末24iに固有のMACアドレスに割り当てられた暗号鍵で、データが暗号化されるので、各端末24iごとの受信制御という、いわば究極の限定受信機構を実現することができる。
【0065】
なお、MACアドレス、あるいはIPアドレス等の受信側に固有の値に暗号鍵を割り当てて、きめ細かい受信制御を行う限定受信機構を実現する方法については、本件出願人が先に提案した、例えば、特開平10−215244号公報に、その詳細が開示されている。但し、わが国における通信衛星放送が、DVB−SI(Digtal Video Broadcasting - Service Information / EN300 468)から派生した仕様に準拠している現状においては、上述したように、MACアドレスを用いるのが、その仕様に適合することとなる。
【0066】
次に、図4は、図1の受信装置22の構成例を示している。
【0067】
アンテナ21は、衛星2を介して、送信システム1から送信されてくる衛星放送波を受信し、その受信信号を、フロントエンド部31に出力する。フロントエンド部31は、CPU34の制御にしたがい、アンテナ21からの受信信号から所定のチャンネルの信号を選局し、さらに、その信号を、TSパケットのディジタルストリーム(IP_datagram_data_byte)に復調して、デマルチプレクサ32に出力する。デマルチプレクサ32は、CPU34の制御にしたがい、フロントエンド部31からのディジタルストリームから、所定のTSパケットを抽出し、復号LSI(Large Scale Integrated Circuit )33に出力する。即ち、デマルチプレクサ32は、フロントエンド部31からのディジタルストリームを構成するTSパケットのヘッダに配置されているPID(Packet Identification)に基づいて、TSパケットの取捨選択を行い、選択したTSパケットのみを、復号LSI33に出力する。
【0068】
復号LSI33は、1チップのLSIで、フィルタ41、復号器42、鍵テーブル記憶部43、チェッカ44、およびFIFO(First In First Out)バッファ45で構成されている。
【0069】
フィルタ41は、CPU34の制御にしたがい、デマルチプレクサ32からのTSパケットで構成されるセクションのペイロードに配置されたデータを、必要に応じて検査し、不必要なTSパケットを破棄し、必要なTSパケットだけを復号器42に出力する。
【0070】
復号器42は、フィルタ41からのTSパケットで構成されるセクションのペイロードに配置されたデータ(ここでは、IPパケット)を、鍵テーブル記憶部43に記憶された復号鍵で復号し、チェッカ44に出力する。また、復号器42は、図2で説明したように、送信システム1において暗号鍵が更新され、その更新された暗号鍵が送信されてきた場合、CPU34の制御にしたがい、その暗号鍵を、復号鍵として、鍵テーブル記憶部43の記憶内容を更新する。従って、ここでは、暗号化方式として、共通鍵暗号化方式が用いられるようになっている。但し、暗号化方式としては、公開鍵暗号化方式を用いることも可能である。
【0071】
鍵テーブル記憶部43は、受信装置22にケーブル25を介して接続された端末241,242,・・・それぞれのMACアドレスと、それぞれに割り当てられた復号鍵とが対応付けられて登録された鍵テーブルを記憶している。
【0072】
チェッカ44は、CPU34の制御にしたがい、復号器42が出力するIPパケットについて、そのIPパケットが配置されていたセクションのCRCコードを用いて誤り検出を行い、これにより、復号器42における復号が正常に行われたかどうか等を判定する。チェッカ44で処理されたIPパケットは、FIFOバッファ45に供給されるようになっており、FIFOバッファ45は、チェッカ44からのIPパケットを一時記憶し、CPU34の制御にしたがい、記憶したIPパケットを、I/F(Interface)35に出力する。これにより、IPパケットのデータレートが調整される。
【0073】
CPU34は、フロントエンド部31、デマルチプレクサ32、復号LSI33、およびI/F35を制御する。I/F35は、CPU34の制御にしたがい、FIFOバッファ45からのIPパケットを、ケーブル25を介して、端末24iに供給するインタフェースとして機能する。
【0074】
次に、図5は、図4の鍵テーブル記憶部43に記憶されている鍵テーブルの構成例を示している。
【0075】
鍵テーブルは、例えば、ケーブル25に接続されている端末241,242,・・・の数と同一数のエントリから構成されている。図5では、鍵テーブルは、N個のエントリ#1乃至#Nを有しており、従って、本実施の形態では、ケーブル25には、N個の端末241乃至24Nが接続されている。なお、鍵テーブルのエントリの最大数は、鍵テーブル記憶部43の記憶容量等によって制限される。
【0076】
各エントリ#i(I=1,2,・・・,N)には、端末24iの48ビットのMACアドレスMACaddress#iと、そのMACアドレスに割り当てられたmビットの復号鍵(mは、使用する暗号形式による)とが対応付けられて登録されている。なお、本実施の形態では、上述したように、Even期間とOdd期間とが存在し、それぞれの期間では、異なる暗号鍵で暗号化が行われるため、各エントリ#iには、Even期間に暗号化されたデータを復号するための復号鍵(以下、適宜、Even復号鍵という)KEven#iと、Odd期間に暗号化されたデータを復号するための復号鍵(以下、適宜、Odd復号鍵という)KOdd#iとの2つの復号鍵が登録されている。
【0077】
さらに、各エントリ#iのMACアドレスMACaddress#iの先頭には、そのエントリ#iが有効であるかどうかを表すValidビット(以下、適宜、エントリValidビットという)が付加されている。また、各エントリ#iのEven復号鍵KEven#iとOdd復号鍵KOdd#iにも、それぞれが有効かどうかを表すValidビット(以下、適宜、復号鍵Validビットという)が付加されている。
【0078】
ここで、エントリValidビット、復号鍵Validビットは、例えば、それが1の場合が有効であることを表し、0の場合が有効でないことを表す。但し、エントリValidビット、復号鍵Validビットの0と1の割り当ては、上述した場合と逆にすることも可能である。
【0079】
上述したように、送信システム1においては、次の期間に用いる新たな暗号鍵と同一の復号鍵は、その直前の期間に、受信システム3に対して配信されるようになっている。従って、Even期間においては、その次のOdd期間で用いられる暗号鍵と同一の復号鍵(Odd復号鍵)が配信され、Odd期間においては、その次のEven期間で用いられる暗号鍵と同一の復号鍵(Even復号鍵)が配信される。そして、復号器42では、CPU34の制御の下、そのようにして配信されてくる復号鍵が、鍵テーブルに設定(例えば、上書き)される。従って、この場合、鍵テーブルには、次の期間に用いられる復号鍵が、現在の期間が終了するまでに設定され、さらに、期間の変更に伴う復号鍵の変更は、CPU34を介在せずに、復号器42が読み出しを行う鍵テーブルの位置(アドレス)を切り替えるだけで済むので、瞬時に行うことができる。
【0080】
次に、図6のフローチャートを参照して、図4の受信装置22の動作について説明する。
【0081】
アンテナ21では、衛星2を介して、送信システム1から送信されてくる衛星放送波が受信され、その結果得られる受信信号は、フロントエンド部31およびデマルチプレクサ32を介することにより、TSパケットのディジタルストリームとされ、復号LSI33に供給される。
【0082】
復号LSI33では、デマルチプレクサ32が出力するTSパケットで構成されるセクションが、フィルタ41を介して、復号器42に供給される。復号器42は、セクションを受信し、ステップS11において、そのセクションヘッダに配置されたMACアドレスを、内蔵するレジスタとしての変数MAにセットする。
【0083】
復号器42は、鍵テーブルを参照することにより、変数MAに一致するMACアドレスのエントリを検索し、即ち、鍵テーブルのエントリ#1から順に、各エントリ#iに登録されているMACアドレスを読み出して、そのMACアドレスと、変数MAとを比較(照合)し、ステップS12において、変数MAに一致するMACアドレスのエントリが存在するかどうかを判定する。ステップS12において、変数MAに一致するMACアドレスのエントリが存在しないと判定された場合、即ち、セクションヘッダに配置されたMACアドレスを有する端末が、ケーブル25上に接続されていない場合、ステップS13に進み、復号器42は、そこに供給されたセクションを破棄し、処理を終了する。
【0084】
また、ステップS12において、変数MAに一致するMACアドレスのエントリが存在すると判定された場合、そのエントリを注目エントリとして、ステップS14に進む。
【0085】
ステップS14では、復号器42は、注目エントリのエントリValidビットに基づいて、その注目エントリが有効であるかどうかを判定する。ステップS14において、注目エントリが有効でないと判定された場合、即ち、注目エントリのエントリValidビットが0である場合、ステップS13に進み、復号器42は、そこに供給されたセクションを破棄し、処理を終了する。
【0086】
従って、復号器42に供給されたセクションのセクションヘッダに配置されたMACアドレスを有する端末が、ケーブル25上に接続されている場合でも、そのMACアドレスのエントリが有効とされていないときには、そのセクションは、ケーブル25上の端末に供給されない。
【0087】
また、ステップS14において、注目エントリが有効であると判定された場合、即ち、注目エントリのエントリValidビットが1である場合、ステップS15に進み、復号器42は、セクションヘッダのPSC(図3(B))の下位ビット、即ち、暗号化判定フラグを参照し、セクションのペイロードのデータ(IPパケット)が暗号化されているかどうかを判定する。ステップS15において、暗号化判定フラグが0であると判定された場合、即ち、セクションのペイロードに配置されたIPパケットが暗号化されていない場合、ステップS17およびS18をスキップして、ステップS19に進み、復号器42は、その暗号化されていないIPパケットを、チェッカ44を介して、FIFOバッファ45に出力して、処理を終了する。
【0088】
そして、FIFOバッファ45に記憶されたIPパケットは、I/F35を介して、そのIPパケットが配置されていたセクションのセクションヘッダにおけるMACアドレスによって特定されるケーブル25上の端末24iに供給される。
【0089】
一方、ステップS15において、暗号化判定フラグが1であると判定された場合、即ち、セクションのペイロードに配置されたIPパケットが暗号化されている場合、ステップS16に進み、復号器42は、そのセクションのセクションヘッダのPSC(図3(B))の上位ビット、即ち、期間判定フラグを、内蔵するレジスタとしての変数EOにセットして、ステップS17に進む。
【0090】
ステップS17では、復号器42は、MACアドレスが変数MAに一致する注目エントリにおける変数EOに対応する期間、即ち、変数EOが0である場合にはEven期間、1である場合にはOdd期間の復号鍵の復号鍵Validビット#(MA,EO)が有効であるかどうかを判定する。ステップS17において、復号鍵Validビット#(MA,EO)が有効でないと判定された場合、即ち、復号鍵Validビット#(MA,EO)が0である場合、ステップS13に進み、復号器42は、そこに供給されたセクションを破棄し、処理を終了する。
【0091】
従って、復号器42に供給されたセクションのセクションヘッダに配置されたMACアドレスを有する端末が、ケーブル25上に接続されており、そのMACアドレスのエントリが有効とされている場合でも、期間判定フラグが表す期間の復号鍵が有効とされていないときには、そのセクションは、ケーブル25上の端末に供給されない。
【0092】
一方、ステップS17において、復号鍵Vaildフラグ#(MA,EO)が有効であると判定された場合、即ち、復号鍵Validビット#(MA,EO)が1である場合、ステップS18に進み、復号器42は、MACアドレスが変数MAに一致する注目エントリにおける、変数EOに対応する期間の復号鍵Key(MA,EO)を、鍵テーブルから読み出し、その復号鍵Key(MA,EO)で、セクションのペイロードに配置されたIPパケットを復号し、ステップS19に進む。
【0093】
ステップS19では、復号器42は、復号されたIPパケットを、チェッカ44を介して、FIFOバッファ45に出力して、処理を終了する。
【0094】
そして、FIFOバッファ45に記憶されたIPパケットは、I/F35を介して、そのIPパケットが配置されていたセクションのセクションヘッダにおけるMACアドレスによって特定されるケーブル25上の端末24iに供給される。
【0095】
なお、図6のフローチャートにしたがった処理は、復号器42に対して、セクションが供給されるごとに行われる。
【0096】
以上のように、鍵テーブルのエントリに登録されたエントリValidビットに基づいて、そのエントリが有効かどうかを判定し、端末に対するデータの出力を制御するようにしたので、データを正常に取得する(受信する)ことのできるユーザ(端末)を、容易に制限することが可能となる。
【0097】
さらに、鍵テーブルの復号鍵Validビットにも基づいて、データの出力を制御するようにしたので、例えば、ある端末について、Even期間またはOdd期間のうちのいずれか一方の期間のみのデータの受信を許可し、他方の期間のデータの受信を禁止することを、容易に行うことができる。
【0098】
なお、エントリValidビットおよび復号鍵Validビットの設定は、受信装置22において、いわば自主的に行うことも可能であるし、また、送信システム1から送信されてくる情報に基づいて行うことも可能である。
【0099】
また、本実施の形態では、復号鍵を(暗号鍵も)、端末に固有のMACアドレスに割り当てるようにしたが、復号鍵は、その他、例えば、端末に固有の端末ID(Identification)を設定し、その端末IDに割り当てるようにすることも可能である。さらに、復号鍵は、複数の端末ごとに固有のグループIDを設定し、そのグループIDごとに割り当てるようにすることも可能である。但し、MACアドレスに対して復号鍵を割り当てる場合には、上述したようなきめの細かい限定受信機構を、DVBの規格であるEN 301 192 V1.1.1(1997-12)に準拠したディジタル衛星放送の枠組みに、容易に組み込むことが可能となる。
【0100】
また、本実施の形態では、フィルタ41、復号器42、鍵テーブル記憶部43、チェッカ44、およびFIFOバッファ45を、1チップの復号LSI33で構成するようにしたが、フィルタ41、復号器42、鍵テーブル記憶部43、チェッカ44、およびFIFOバッファ45は、それぞれ別のチップとして構成することも可能である。但し、フィルタ41、復号器42、鍵テーブル記憶部43、チェッカ44、およびFIFOバッファ45を、1チップの復号LSI33で構成した方が、データの復号が、復号LSI33の外部から完全に隠蔽された形で行われるため、セキュリティを向上させることができる。さらに、回路の実装面積の縮小や、処理の高速化等の観点からも、フィルタ41、復号器42、鍵テーブル記憶部43、チェッカ44、およびFIFOバッファ45は、1チップの復号LSI33で構成するのが望ましい。
【0101】
また、本実施の形態では、ディジタル衛星放送によってデータを配信する場合について説明したが、本発明は、その他、例えば、マルチキャストでデータを配信する場合等にも適用可能である。
【0102】
さらに、本実施の形態では、Even期間とOdd期間の2つの期間を設けるようにしたが、そのような期間を設けないようにすることも可能であるし、3以上の期間を設けるようにすることも可能である。同様に、鍵テーブルの各エントリに登録する復号鍵の数も、1つだけとしたり、3以上とすることが可能である。
【0103】
また、本実施の形態では、データを、DVBの規格に準拠する形で配信するようにしたが、データの配信は、DVBの規格に準拠しない形で行うことも可能である。
【0104】
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータや、1チップのマイクロコンピュータ等にインストールされる。
【0105】
そこで、図7は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【0106】
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク105やROM103に予め記録しておくことができる。
【0107】
あるいはまた、プログラムは、フロッピーディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体111に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体111は、いわゆるパッケージソフトウエアとして提供することができる。
【0108】
なお、プログラムは、上述したようなリムーバブル記録媒体111からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部108で受信し、内蔵するハードディスク105にインストールすることができる。
【0109】
コンピュータは、CPU(Central Processing Unit)102を内蔵している。CPU102には、バス101を介して、入出力インタフェース110が接続されており、CPU102は、入出力インタフェース110を介して、ユーザによって、キーボードやマウス等で構成される入力部107が操作されることにより指令が入力されると、それにしたがって、ROM(Read Only Memory)103に格納されているプログラムを実行する。あるいは、また、CPU102は、ハードディスク105に格納されているプログラム、衛星若しくはネットワークから転送され、通信部108で受信されてハードディスク105にインストールされたプログラム、またはドライブ109に装着されたリムーバブル記録媒体111から読み出されてハードディスク105にインストールされたプログラムを、RAM(Random Access Memory)104にロードして実行する。これにより、CPU102は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU102は、その処理結果を、必要に応じて、例えば、入出力インタフェース110を介して、LCD(Liquid CryStal Display)やスピーカ等で構成される出力部106から出力、あるいは、通信部108から送信、さらには、ハードディスク105に記録等させる。
【0110】
ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
【0111】
また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【0112】
【発明の効果】
本発明のデータ処理装置およびデータ処理方法、並びに記録媒体によれば、宛先と、登録されているそのエントリが有効であるかどうかを表すエントリ有効情報と、エントリに登録された宛先に割り当てられた鍵と、エントリに登録された宛先に割り当てられた鍵が有効かどうかを表す鍵有効情報とが登録されているエントリを有するテーブルであって、記憶手段に記憶されているテーブルから、データブロックの宛先に一致する宛先を有するエントリが検索され、検索の結果得られたエントリである注目エントリに登録されたエントリ有効情報に基づいて、注目エントリが有効かどうかが判定され、注目エントリに登録された鍵有効情報に基づいて、注目エントリの鍵が有効かどうかが判定され、注目エントリが有効であると判定された場合、注目エントリの鍵が有効であると判定されたとき、データブロックに配置されたデータであって、注目エントリに登録されている鍵を用いて復号されたデータがデータブロックに配置された宛先に出力され、注目エントリが有効でないと判定された場合、データが破棄され、注目エントリの鍵が有効でないと判定された場合、データが破棄される。従って、データを正常に取得することのできるユーザを、容易に制限することが可能となる。
【図面の簡単な説明】
【図1】本発明を適用した放送システムの一実施の形態の構成例を示すブロック図である。
【図2】図1の送信システム1の処理を説明するためのフローチャートである。
【図3】セクションとセクションヘッダのフォーマットを示す図である。
【図4】図1の受信装置22の構成例を示すブロック図である。
【図5】鍵テーブルを示す図である。
【図6】図4の受信装置22の処理を説明するためのフローチャートである。
【図7】本発明を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
【符号の説明】
1 送信システム, 2 衛星, 3 受信システム, 4 ネットワーク,11 制御装置, 12 データサーバ, 13 送信処理装置, 13A 暗号鍵テーブル記憶部, 14 アンテナ, 15 回線接続装置, 16 ケーブル, 21 アンテナ, 22 受信装置, 23 回線接続装置, 241,242 端末, 31 フロントエンド部, 32 デマルチプレクサ, 33 復号LSI, 34 CPU, 35 I/F, 41 フィルタ, 42復号器, 43 鍵テーブル記憶部, 44 チェッカ, 45 FIFOバッファ, 101 バス, 102 CPU, 103 ROM, 104 RAM, 105 ハードディスク, 106 出力部, 107 入力部, 108 通信部, 109 ドライブ, 110 入出力インタフェース, 111 リムーバブル記録媒体
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data processing device, a data processing method, and a recording medium. In particular, for example, when data is broadcast by a satellite line or the like, a terminal (user) that can acquire the data can be easily obtained. The present invention relates to a data processing device, a data processing method, and a recording medium that can be restricted.
[0002]
[Prior art]
For example, when images and sounds are transmitted as digital data, it is possible to secure multiple channels in the same transmission band as when analog signals are transmitted, and to provide higher quality images and sounds. In the field of satellite broadcasting or satellite communication, systems that provide images and sounds as digital data are becoming widespread. For example, digital satellite broadcasting services such as SkyPerfecTV! And DirecTV in Japan, DirecTV in North America, and Canal Plus in Europe have started. Digitalization of broadcasting enables transmission costs per channel to be reduced, provision of programs and data handled by computers, etc., and provision of programs and images in conjunction with digitalization. Services are also spreading.
[0003]
In the digital satellite broadcasting service, digital data of images and sounds is converted into a format conforming to MPEG (Moving Picutre Experts Group) 2 and DVB (Digital Video Broadcasting) standard derived from MPEG 2, and further multiplexed. , Transmitted as radio waves. The radio wave is received by a satellite transponder, amplified, and other necessary processing is performed, and then transmitted to the ground.
[0004]
The transmission band of the transponder is, for example, as large as 30 Mbps (Mega bit per second). By using all of such a large transmission band, it is possible to distribute digital data with high quality and at high speed.
[0005]
However, generally, mainly for cost reasons, the transponder transmission band is often divided into multiple channels for use. In this case, even if the contents of the digital data transmitted by each channel are different, the receiving side receiving the digital data of each channel has a common mechanism, so that only a specific user receives provision of certain digital data. Therefore, a conditional access (CA) mechanism is required.
[0006]
That is, in particular, for example, when performing so-called data broadcasting, it is expected that the amount of data per program is small and the charging unit or charging form is complicated compared to the case of distributing images and sound, In order to cope with this, a conditional access mechanism capable of performing finer reception control is required. In addition, the limited reception mechanism is necessary to prevent leakage even when confidential information is distributed.
[0007]
In general, the conditional access mechanism is realized by encrypting a data stream to be distributed. As an encryption method, a common key encryption method (secret key encryption method) and a public key encryption method are known. In digital satellite broadcasting, the common key encryption method is often used because the processing load of encryption / decryption is lighter than that of the public key encryption method.
[0008]
In the common key encryption method, a code string that is the same as the encryption key and serves as a decryption key is delivered to a certain contractor A by some method, and the data is encrypted and distributed with the encryption key. The encrypted data is then difficult to analogize by reversely calculating the encryption key (decryption key) or the original data, and therefore user B who is not a contractor is encrypted. Even if the received data is received, it cannot be correctly restored to the original data. Further, the user A who is a contractor can restore the original data by decrypting the encrypted data with the decryption key passed by the contract. Therefore, the reception contract is equivalent to the delivery of the decryption key.
[0009]
[Problems to be solved by the invention]
By the way, for example, when the users A and C are contractors, when the contract with only the user A is terminated, or when the user A performs an illegal act, the encryption key used up to now is used. If the same decryption key as the changed encryption key is provided to only the user C, the user A who is no longer a contractor or who has performed an illegal act is encrypted with the new encryption key. It becomes impossible to restore the encrypted data, and the user C who is a valid contractor continues to normally restore the data encrypted with the new encryption key by decrypting with the new decryption key. can do.
[0010]
However, it is cumbersome to change the encryption key each time a user's contract is terminated or an illegal act is found, and to provide a legitimate contractor with the same decryption key as the changed encryption key. It is.
[0011]
The present invention has been made in view of such a situation, and makes it possible to easily limit users who can normally acquire (receive) data.
[0012]
[Means for Solving the Problems]
  The data processing apparatus of the present invention includes a destination,The registered entryEntry valid information indicating whether or not is valid andA key assigned to the destination registered in the entry, and key validity information indicating whether or not the key assigned to the destination registered in the entry is valid.Table with entries registeredAnd a table stored in the storage meansEntry with a destination that matches the destination of the data blockSearch forSearch means;It is determined whether the target entry is valid based on the entry valid information registered in the target entry that is an entry obtained as a result of the search by the search means, and the target entry is determined based on the key valid information registered in the target entry. Whether the key is validA determination means;When the determination means determines that the target entry is valid, when it is determined that the key of the target entry is valid, the key registered in the target entry is the data arranged in the data block. The decrypted data is output to the destination arranged in the data block, and when the determining unit determines that the target entry is not valid, the data is discarded, and the determining unit determines that the key of the target entry is not valid. Control the output of the data placed in the data block so that the data is discarded.Output control means.
[0014]
  Data encrypted with the key registered in the entry of interestDecoding means for decoding can be further provided.
[0018]
  Each entry in the table containsDestination registered in the entryTwo or more keys assigned to can also be registered.
[0019]
In each entry of the table, key validity information indicating whether or not the key is valid can be registered for each of two or more keys.
[0023]
The data processing apparatus of the present invention can be constituted by a one-chip IC (Integrated Circuit).
[0024]
  The data processing method of the present invention includes:In the storage means,Destination,The registered entryEntry valid information indicating whether or not is valid andA key assigned to the destination registered in the entry, and key validity information indicating whether or not the key assigned to the destination registered in the entry is valid.Table with entries registeredAnd a table stored in the storage means by the search meansEntry with a destination that matches the destination of the data blockSearch forA search step;The determination means determines whether the target entry is valid based on the entry valid information registered in the target entry, which is an entry obtained as a result of the search in the search step. Based on the key valid information registered in the target entry To determine whether the key of the entry of interest is validA determination step;When it is determined by the output control means that the target entry is valid in the determination step, when it is determined that the key of the target entry is valid, the data arranged in the data block is registered in the target entry. The decrypted data using the stored key is output to the destination arranged in the data block. If it is determined in the determination step that the target entry is not valid, the data is discarded, and the key of the target entry is determined in the determination step. Controls the output of data placed in a data block to discard data if it is determined not to be validOutput control step andIncludeIt is characterized by that.
[0025]
  The recording medium of the present invention includes a destination,The registered entryEntry valid information indicating whether or not is valid andA key assigned to the destination registered in the entry, and key validity information indicating whether or not the key assigned to the destination registered in the entry is valid.Table with entries registeredThe table stored in the storage meansEntry with a destination that matches the destination of the data blockSearch forA search step;It is determined whether the target entry is valid based on the entry valid information registered in the target entry that is an entry obtained as a result of the search in the search step, and the target entry is determined based on the key valid information registered in the target entry. Whether the key is validA determination step;In the determination step, when it is determined that the target entry is valid, when it is determined that the key of the target entry is valid, the key registered in the target entry is the data arranged in the data block. The decrypted data is output to the destination arranged in the data block, and when it is determined in the determination step that the target entry is not valid, the data is discarded, and in the determination step, it is determined that the key of the target entry is not valid. Control the output of the data placed in the data block so that the data is discarded.Output control step andContains programs that allow a computer to perform data processing includingIt is characterized by that.
[0026]
  In the data processing device, the data processing method, and the recording medium of the present invention,Entry validity information indicating whether the entry registered is valid, the key assigned to the destination registered in the entry, and whether the key assigned to the destination registered in the entry is valid And a table having entries registered with key valid information indicating the entry having a destination that matches the destination of the data block from the table stored in the storage means, and obtained as a result of the search It is determined whether the target entry is valid based on the entry valid information registered in the target entry that is an entry, and whether the key of the target entry is valid is determined based on the key valid information registered in the target entry. If the target entry is determined to be valid, the key of the target entry is determined to be valid. Data that has been decrypted using the key registered in the entry of interest is output to the destination placed in the data block, and if it is determined that the entry of interest is not valid, the data is discarded, If it is determined that the key of the target entry is not valid, the data is discarded.
[0027]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 shows an embodiment of a broadcasting system to which the present invention is applied (a system is a logical collection of a plurality of devices, regardless of whether or not each component device is in the same housing). The example of a structure of the form is shown.
[0028]
In the embodiment of FIG. 1, the broadcasting system is composed of a transmission system 1, a satellite 2, a reception system 3, and a network 4. In FIG. 1, only one reception system (reception system 3) is shown in order to avoid making the figure complicated, but two or more reception systems can be provided.
[0029]
The transmission system 1 includes a control device 11, a data server 12, a transmission processing device 13, an antenna 14, a line connection device 15, and a cable 16, and includes the control device 11, the data server 12, the transmission processing device 13, and the line connection device. 15 are connected to each other via a cable 16 to constitute a LAN (Local Area Network).
[0030]
The control device 11 controls the data server 12 to supply the transmission processing device 13 with data to be distributed by satellite broadcasting. In addition, the control device 11 controls the line connection device 15 to acquire data to be distributed by satellite broadcasting from the external network 4 such as the Internet and supply it to the transmission processing device 13. Furthermore, the control device 11 controls various processes in the transmission processing device 13.
[0031]
The data server 12 stores data to be distributed by satellite broadcasting, and supplies necessary data to the transmission processing device 13 under the control of the control device 11.
[0032]
Under the control of the control device 11, the transmission processing device 13 packetizes the data supplied from the data server 12 or the line connection device 15 into, for example, an IP (Internet Protocol) packet, and further converts the IP packet into DVB data. Sections compliant with the broadcast specification, i.e., for example, EN 301 192 V1.1.1 (1997-12), DVB specification for data broadcasting ETSI (European Telecommunications Standards Institute) Multiprotocol Encapsulation Block data blocks called sections described by descriptors based on them. Then, the transmission processing device 13 divides the section into payloads of a predetermined length, and adds a header of a packet (hereinafter, appropriately referred to as a TS (Transport Stream) packet) constituting the MPEG2 transport stream to each payload. Thus, a packet similar to the TS packet is formed, and further necessary processing such as modulation and amplification is performed, and the resultant is transmitted from the antenna 14 as a satellite broadcast wave.
[0033]
In addition, the transmission processing device 13 is a terminal 24 constituting the reception system 3.1, 242,... (Similar for terminals constituting the receiving system not shown in FIG. 1). Table-form encryption in which each MAC address is associated with an encryption key assigned to each MAC (Media Access Control) address. It has an encryption key table storage unit 13A that stores a key table. Note that the encryption keys assigned to each MAC address are basically all different. However, the same encryption key may be assigned to some MAC addresses.
[0034]
Here, the MAC address is an address system applied to IEEE (Institute of Electrical Electronics Engineers) 802.3, etc., and is a 48-bit value unique to each communication port, and is guaranteed not to overlap. . In the 48-bit MAC address, the upper 24 bits are a manufacturer (vendor) identification number registered / managed by IEEE, and the lower 24 bits are a device identification number managed by each vendor. It has become. According to the MAC address, each terminal 24 of the receiving system 3i(I = 1, 2,...) Can be specified.
[0035]
According to the multi-protocol encapsulation described above, the terminal 24 that distributes the data arranged in the payload of the section to the section header (section header).iAs the destination, the MAC address of the terminal is arranged. In the case where it is necessary to encrypt the data arranged in the payload of the section, that is, the IP packet here, the transmission processing device 13 sends the terminal 24 as the destination arranged in the header of the section.iThe encryption key assigned to the MAC address is read from the encryption key table stored in the encryption key table storage unit 13A, and the IP packet arranged in the payload of the section is encrypted with the encryption key. Yes.
[0036]
Note that the encryption key table may be in the same format as that of a key table included in the receiving device 22 that will be described later, which constitutes the receiving system 3, or may be in a different format. Here, the encryption key table is built in the transmission system 1, but the encryption key table is stored in, for example, a server (not shown) on the network 4 and, if necessary, the line It is also possible to read and use via the connection device 15.
[0037]
The line connection device 15 is composed of, for example, a modem, TA (Terminal Adapter), DSU (Digital Service Unit), and the like, and performs communication control via the network 4.
[0038]
The reception system 3 includes an antenna 21, a reception device 22, a line connection device 23, and a terminal 24.1, 242,..., And a cable 25, a receiving device 22, a line connection device 23, and a terminal 24.1, 242,... Are connected to each other via a cable 25, thereby constituting a LAN such as Ethernet (trademark).
[0039]
The receiving device 22 and the terminal 241, 242,... Can be configured by a computer, for example.
[0040]
Also, here, the receiving device 22 and the terminal 241, 242,... Are connected to each other via a cable 25 to form a LAN. However, the receiving device 22 and the terminal 24 are connected to each other.1, 242,... Can be connected directly.
[0041]
Further, the receiving device 22 includes one terminal 24.iIt can be configured as a board that can be mounted in a slot of a computer.
[0042]
The receiving device 22 and the line connection device 23 can be configured by a single computer.
[0043]
The satellite broadcast wave transmitted from the transmission system 1 via the satellite 2 is received by the antenna 21, and the received signal is supplied to the receiving device 22. The receiving device 22 performs a process as described later on the received signal from the antenna 21, and the resulting data is sent to a predetermined terminal 24.iTo supply.
[0044]
The line connection device 23 is configured in the same manner as the line connection device 15 and performs communication control via the network 4.
[0045]
Terminal 241, 242,... Are configured by a computer, for example, and receive necessary data from the receiving device 22 to display, output, or store the data.
[0046]
Next, data transmission processing performed by the transmission system 1 will be described with reference to the flowchart of FIG.
[0047]
First, in step S1, the control device 11 makes a terminal 24.iWhether there is data to be transmitted is determined.
[0048]
Here, the control device 11 has a schedule table in which a schedule for transmitting data is described, and based on the schedule table, the terminal 24iWhether there is data to be transmitted is determined. The terminal 24iBy controlling the line connection device 23, it is possible to request data from the transmission system 1 via the network 4, and the control device 11 sends such a request to the network. 4, depending on whether or not the line connection device 15 receives the terminal 24iWhether there is data to be transmitted is determined.
[0049]
In step S1, the terminal 241If it is determined that there is no data to be transmitted, the process proceeds to step S2, and the control device 11 determines whether to change the period.
[0050]
Here, in the transmission system 1, the encryption key described in the encryption key table in the encryption key table storage unit 13 is updated regularly or irregularly. A period during which encryption is performed using the obtained encryption key is referred to as an “even period”, and a period during which encryption is performed using an encryptor obtained by an odd number of updates is referred to as an “Odd period”. Therefore, although the Even period and the Odd period appear alternately, it is determined in step S2 whether it is time to change from the Even period to the Odd period or from the Odd period to the Even period.
[0051]
If it is determined in step S2 that the period is not to be changed, that is, if data encryption is to be continued using the encryption key used for encryption as it is, the process returns to step S1, and hereinafter, Similar processing is repeated.
[0052]
If it is determined in step S2 that the period is to be changed, that is, if the period is changed, that is, the Odd period when it is the Even period, and the Even period when it is the Odd period, the process proceeds to Step S3, and the control is performed. The device 11 updates the encryption key stored in the encryption key table to the encryption key generated last time in step S4, which will be described later, and thereafter uses the updated encryption key in the transmission processing device 13. Encryption.
[0053]
And it progresses to step S4, the control apparatus 11 produces | generates (or acquires) the encryption key used in the next period, supplies it to the transmission processing apparatus 13, makes it transmit as a decryption key, returns to step S1, Processing similar to that described above is repeated. The decryption key can be transmitted not only via the satellite 2 but also via the network 4.
[0054]
That is, if a new decryption key used in the next period is transmitted to the reception system 3 immediately before the start of the next period, the new decryption key is set in the reception system 3 at the start of the next period. May not be in time. Therefore, in this embodiment, a new encryption key used in the next period is distributed to the receiving system 3 in the period immediately before.
[0055]
On the other hand, in step S1, the terminal 24iWhen it is determined that there is data to be transmitted, the control device 11 controls the data server 12 or the line connection device 15 to cause the transmission processing device 13 to supply the data to be transmitted. The transmission processing device 13 receives the data supplied from the data server 12 or the line connection device 15, packetizes it into an IP packet, and proceeds to step S5.
[0056]
In step S5, the transmission processing device 13 determines whether or not the IP packet needs to be encrypted. If the transmission processing device 13 determines that the IP packet does not need to be encrypted, the transmission processing device 13 skips steps S6 and S7. Proceed to S8.
[0057]
If it is determined in step S5 that the IP packet needs to be encrypted, the process proceeds to step S6, where the transmission processing device 13 sends the terminal 24 that is the destination of the IP packet.iThe encryption key assigned to the MAC address is read from the encryption key table, and the process proceeds to step S7. In step S7, the transmission processing apparatus 13 encrypts the IP packet with the encryption key read in step S6, and proceeds to step S8.
[0058]
In step S8, the transmission processing device calculates a CRC (Cyclic Redundancy Checking) code (or checksum) for the IP packet, uses the IP packet as a payload, places a CRC code at the end thereof, and at the head thereof. By arranging the section header, a section as shown in FIG. A stuffing byte is inserted between the payload and the CRC code as necessary.
[0059]
The section header is composed of 3 bytes (96 bits) as shown in FIG. Here, since the details of the section header are described in the above-mentioned EN 301 192 V1.1.1 (1997-12), the description thereof is omitted, but MAC addresses 1 to 6 in FIG. A 48-bit MAC address as a destination is arranged. Here, 8 bits from the most significant bit of the MAC address are arranged in MAC address 1, and the next higher 8 bits are arranged in MAC address 2. Similarly, 8 bits each of the MAC address are arranged in each of the MAC addresses 3 to 5, and the least significant 8 bits of the MAC address are arranged in the MAC address 6.
[0060]
After configuring the section, the transmission processing device 13 divides the section into payloads of a predetermined length, and adds the header of the TS packet that configures the MPEG2 transport stream to each payload, thereby classifying the section as a TS packet. Encapsulates the packet. Then, the transmission processing apparatus 13 proceeds to step S9, and the packet obtained as a result (this packet can be processed basically in the same manner as a TS packet, and henceforth referred to as a TS packet as appropriate). Then, necessary processing such as modulation and amplification is performed, and the satellite 14 transmits the satellite broadcast wave, and the process returns to step S1.
[0061]
In the section header shown in FIG. 3B, the 2-bit PSC (payload_scrambling_control) arranged in the 2nd bit of the 43rd and 44th bits from the head is, for example, data arranged in the payload of the section Is used as an encryption determination flag indicating whether or not is encrypted, and a period determination flag indicating whether the data is of the Even period or the Odd period.
[0062]
Specifically, for example, the lower bits of the PSC are used as an encryption determination flag, and are set to 1 when the data is encrypted, and set to 0 when the data is not encrypted. The upper bits of the PSC are used as a period determination flag, and are set to 0 in the Even period and 1 in the Odd period. However, the upper bits of the PSC can be used as an encryption determination flag, and the lower bits can be used as a period determination flag. Also, the assignment of the encryption determination flag 0 and 1 and the assignment of the period determination flag 0 and 1 can be reversed from those described above.
[0063]
Here, in the case of EN 301 192 V1.1.1 (1997-12), which is a DVB standard, PSC is 00B (B represents that the value placed before it is a binary number). Therefore, the encryption determination flag is set to 1 when the data is encrypted and is set to 0 when the data is not encrypted. This is desirable because it will not be contrary.
[0064]
As described above, in the broadcasting system of FIG.iSince the data is encrypted with the encryption key assigned to the unique MAC address, each terminal 24iIn other words, it is possible to realize an ultimate limited reception mechanism called reception control.
[0065]
Note that a method for realizing a conditional access mechanism that performs fine reception control by assigning an encryption key to a unique value on the receiving side, such as a MAC address or an IP address, has been proposed by the present applicant. The details are disclosed in Japanese Laid-Open Patent Publication No. 10-215244. However, in the current situation where communication satellite broadcasting in Japan complies with the specification derived from DVB-SI (Digtal Video Broadcasting-Service Information / EN300 468), as described above, the MAC address is used. It will conform to.
[0066]
Next, FIG. 4 shows a configuration example of the receiving device 22 of FIG.
[0067]
The antenna 21 receives the satellite broadcast wave transmitted from the transmission system 1 via the satellite 2 and outputs the received signal to the front end unit 31. Under the control of the CPU 34, the front end unit 31 selects a signal of a predetermined channel from the received signal from the antenna 21, further demodulates the signal into a digital stream (IP_datagram_data_byte) of a TS packet, and demultiplexer 32. The demultiplexer 32 extracts a predetermined TS packet from the digital stream from the front end unit 31 and outputs it to a decoding LSI (Large Scale Integrated Circuit) 33 under the control of the CPU 34. That is, the demultiplexer 32 performs selection of TS packets based on PID (Packet Identification) arranged in the header of the TS packets constituting the digital stream from the front end unit 31, and only selects the selected TS packets. And output to the decoding LSI 33.
[0068]
The decryption LSI 33 is a one-chip LSI, and includes a filter 41, a decryptor 42, a key table storage unit 43, a checker 44, and a FIFO (First In First Out) buffer 45.
[0069]
Under the control of the CPU 34, the filter 41 inspects the data arranged in the payload of the section composed of the TS packets from the demultiplexer 32 as necessary, discards unnecessary TS packets, and creates the necessary TS. Only the packet is output to the decoder 42.
[0070]
The decoder 42 decrypts the data (in this case, the IP packet) arranged in the payload of the section composed of the TS packets from the filter 41 with the decryption key stored in the key table storage unit 43, and sends it to the checker 44. Output. Further, as described with reference to FIG. 2, when the encryption key is updated in the transmission system 1 and the updated encryption key is transmitted, the decryptor 42 decrypts the encryption key according to the control of the CPU 34. As a key, the stored contents of the key table storage unit 43 are updated. Therefore, here, the common key encryption method is used as the encryption method. However, a public key encryption method can be used as the encryption method.
[0071]
The key table storage unit 43 includes a terminal 24 connected to the receiving device 22 via the cable 25.1, 242,... Stores a key table in which each MAC address and a decryption key assigned to each MAC address are registered in association with each other.
[0072]
Under the control of the CPU 34, the checker 44 performs error detection on the IP packet output from the decoder 42 by using the CRC code of the section in which the IP packet is arranged, so that the decoding in the decoder 42 is normal. It is determined whether or not it was performed. The IP packet processed by the checker 44 is supplied to the FIFO buffer 45. The FIFO buffer 45 temporarily stores the IP packet from the checker 44, and the stored IP packet is controlled under the control of the CPU 34. , Output to I / F (Interface) 35. As a result, the data rate of the IP packet is adjusted.
[0073]
The CPU 34 controls the front end unit 31, the demultiplexer 32, the decoding LSI 33, and the I / F 35. The I / F 35 receives the IP packet from the FIFO buffer 45 via the cable 25 according to the control of the CPU 34.iFunctions as an interface to supply
[0074]
Next, FIG. 5 shows a configuration example of a key table stored in the key table storage unit 43 of FIG.
[0075]
The key table is, for example, the terminal 24 connected to the cable 25.1, 242,... Are made up of the same number of entries. In FIG. 5, the key table has N entries # 1 to #N. Therefore, in the present embodiment, the cable 25 has N terminals 24.1Thru 24NIs connected. The maximum number of key table entries is limited by the storage capacity of the key table storage unit 43 and the like.
[0076]
Each entry #i (I = 1, 2,..., N) includes a terminal 24.i48-bit MAC address MACaddress # i and an m-bit decryption key assigned to the MAC address (m is based on the encryption format used) are registered in association with each other. In the present embodiment, as described above, there are an Even period and an Odd period, and encryption is performed with different encryption keys in each period, so that each entry #i is encrypted in the Even period. Decryption key (hereinafter referred to as “Even decryption key” where appropriate) K for decrypting the encrypted dataEven # iAnd a decryption key for decrypting data encrypted in the Odd period (hereinafter referred to as an Odd decryption key as appropriate) KOdd # iAre registered.
[0077]
Further, a Valid bit indicating whether the entry #i is valid (hereinafter referred to as an entry Valid bit as appropriate) is added to the head of the MAC address MACaddress # i of each entry #i. Also, the Even decryption key K of each entry #iEven # iAnd Odd decryption key KOdd # iIn addition, a Valid bit indicating whether each is valid (hereinafter referred to as a decryption key Valid bit as appropriate) is added.
[0078]
Here, the entry valid bit and the decryption key valid bit represent, for example, that it is valid when it is 1, and that it is not valid when it is 0. However, the assignment of 0 and 1 for the entry valid bit and the decryption key valid bit can be reversed from the case described above.
[0079]
As described above, in the transmission system 1, the same decryption key as the new encryption key used in the next period is distributed to the reception system 3 in the period immediately before that. Therefore, in the Even period, the same decryption key (Odd decryption key) as the encryption key used in the next Odd period is distributed, and in the Odd period, the same decryption key as the encryption key used in the next Even period is distributed. The key (Even decryption key) is distributed. In the decryptor 42, the decryption key distributed in this way is set (for example, overwritten) in the key table under the control of the CPU 34. Therefore, in this case, the decryption key used in the next period is set in the key table until the end of the current period, and further, the decryption key change accompanying the change in the period does not involve the CPU 34. Since it is only necessary to switch the position (address) of the key table to be read by the decoder 42, it can be performed instantaneously.
[0080]
Next, the operation of the receiving device 22 in FIG. 4 will be described with reference to the flowchart in FIG.
[0081]
The antenna 21 receives the satellite broadcast wave transmitted from the transmission system 1 via the satellite 2, and the received signal obtained as a result is transmitted through the front end unit 31 and the demultiplexer 32, so that the digital signal of the TS packet is received. The stream is supplied to the decoding LSI 33.
[0082]
In the decoding LSI 33, a section composed of TS packets output from the demultiplexer 32 is supplied to the decoder 42 via the filter 41. The decoder 42 receives the section, and in step S11, sets the MAC address arranged in the section header in a variable MA as a built-in register.
[0083]
The decryptor 42 searches the MAC address entry that matches the variable MA by referring to the key table, that is, reads the MAC address registered in each entry #i in order from the entry # 1 of the key table. Then, the MAC address is compared (matched) with the variable MA, and in step S12, it is determined whether there is an entry with a MAC address that matches the variable MA. If it is determined in step S12 that there is no MAC address entry that matches the variable MA, that is, if the terminal having the MAC address arranged in the section header is not connected on the cable 25, the process proceeds to step S13. Proceeding, the decoder 42 discards the section supplied thereto and ends the process.
[0084]
If it is determined in step S12 that there is an entry with a MAC address that matches the variable MA, the process proceeds to step S14 with that entry as a target entry.
[0085]
In step S14, the decoder 42 determines whether the target entry is valid based on the entry Valid bit of the target entry. When it is determined in step S14 that the entry of interest is not valid, that is, when the entry Valid bit of the entry of interest is 0, the process proceeds to step S13, where the decoder 42 discards the section supplied thereto and performs processing. Exit.
[0086]
Therefore, even if a terminal having the MAC address arranged in the section header of the section supplied to the decoder 42 is connected on the cable 25, when the entry of the MAC address is not valid, the section Is not supplied to the terminal on the cable 25.
[0087]
If it is determined in step S14 that the entry of interest is valid, that is, if the entry Valid bit of the entry of interest is 1, the process proceeds to step S15, where the decoder 42 determines the PSC of the section header (FIG. 3 ( The lower bit of B)), that is, the encryption determination flag is referred to, and it is determined whether or not the data (IP packet) of the section payload is encrypted. If it is determined in step S15 that the encryption determination flag is 0, that is, if the IP packet arranged in the payload of the section is not encrypted, steps S17 and S18 are skipped and the process proceeds to step S19. The decryptor 42 outputs the unencrypted IP packet to the FIFO buffer 45 via the checker 44 and ends the process.
[0088]
Then, the IP packet stored in the FIFO buffer 45 is sent via the I / F 35 to the terminal 24 on the cable 25 specified by the MAC address in the section header of the section in which the IP packet is arranged.iTo be supplied.
[0089]
On the other hand, if it is determined in step S15 that the encryption determination flag is 1, that is, if the IP packet arranged in the payload of the section is encrypted, the process proceeds to step S16, and the decoder 42 The upper bit of the PSC (FIG. 3B) of the section header of the section, that is, the period determination flag is set in a variable EO as a built-in register, and the process proceeds to step S17.
[0090]
In step S17, the decoder 42 determines the period corresponding to the variable EO in the entry of interest whose MAC address matches the variable MA, that is, the Even period when the variable EO is 0, and the Odd period when it is 1. It is determined whether or not the decryption key Valid bit # (MA, EO) of the decryption key is valid. If it is determined in step S17 that the decryption key valid bit # (MA, EO) is not valid, that is, if the decryption key valid bit # (MA, EO) is 0, the process proceeds to step S13, where the decryptor 42 , The section supplied thereto is discarded, and the process ends.
[0091]
Therefore, even if the terminal having the MAC address arranged in the section header of the section supplied to the decoder 42 is connected on the cable 25 and the entry of the MAC address is valid, the period determination flag When the decryption key for the period represented by is not valid, the section is not supplied to the terminal on the cable 25.
[0092]
On the other hand, if it is determined in step S17 that the decryption key Valid flag # (MA, EO) is valid, that is, if the decryption key Valid bit # (MA, EO) is 1, the process proceeds to step S18 and decryption is performed. The unit 42 reads the decryption key Key (MA, EO) of the period corresponding to the variable EO in the entry of interest whose MAC address matches the variable MA from the key table, and uses the decryption key Key (MA, EO) to The IP packet arranged in the payload is decoded, and the process proceeds to step S19.
[0093]
In step S19, the decoder 42 outputs the decoded IP packet to the FIFO buffer 45 via the checker 44, and ends the process.
[0094]
Then, the IP packet stored in the FIFO buffer 45 is sent via the I / F 35 to the terminal 24 on the cable 25 specified by the MAC address in the section header of the section in which the IP packet is arranged.iTo be supplied.
[0095]
The process according to the flowchart of FIG. 6 is performed each time a section is supplied to the decoder 42.
[0096]
As described above, based on the entry Valid bit registered in the key table entry, it is determined whether or not the entry is valid, and the data output to the terminal is controlled. It is possible to easily limit users (terminals) that can receive the data.
[0097]
Furthermore, since the output of data is controlled based on the decryption key Valid bit of the key table, for example, for a certain terminal, reception of data only in either the Even period or the Odd period is received. It is possible to easily perform permission and prohibit reception of data in the other period.
[0098]
It should be noted that the entry valid bit and the decryption key valid bit can be set voluntarily in the receiving device 22, or based on information transmitted from the transmission system 1. is there.
[0099]
In this embodiment, the decryption key (including the encryption key) is assigned to the MAC address unique to the terminal. However, for example, the decryption key sets a terminal ID (Identification) unique to the terminal, for example. It is also possible to assign to the terminal ID. Furthermore, the decryption key can be assigned to each group ID by setting a unique group ID for each of a plurality of terminals. However, when assigning a decryption key to a MAC address, a fine limited reception mechanism as described above is used for digital satellite broadcasting in compliance with the DVB standard EN 301 192 V1.1.1 (1997-12). It can be easily incorporated into the framework.
[0100]
In this embodiment, the filter 41, the decoder 42, the key table storage unit 43, the checker 44, and the FIFO buffer 45 are configured by the one-chip decoding LSI 33. However, the filter 41, the decoder 42, The key table storage unit 43, the checker 44, and the FIFO buffer 45 can be configured as separate chips. However, if the filter 41, the decoder 42, the key table storage unit 43, the checker 44, and the FIFO buffer 45 are configured by the one-chip decoding LSI 33, the data decoding is completely hidden from the outside of the decoding LSI 33. Since it is performed in the form, security can be improved. Furthermore, the filter 41, the decoder 42, the key table storage unit 43, the checker 44, and the FIFO buffer 45 are configured by a one-chip decryption LSI 33 from the viewpoint of reducing the circuit mounting area and increasing the processing speed. Is desirable.
[0101]
In the present embodiment, the case of distributing data by digital satellite broadcasting has been described. However, the present invention is also applicable to, for example, the case of distributing data by multicast.
[0102]
Furthermore, in this embodiment, the two periods, the Even period and the Odd period, are provided. However, it is possible not to provide such a period, or to provide three or more periods. It is also possible. Similarly, the number of decryption keys registered in each entry of the key table can be only one, or three or more.
[0103]
In the present embodiment, data is distributed in a form that conforms to the DVB standard. However, data can also be distributed in a form that does not conform to the DVB standard.
[0104]
Next, the series of processes described above can be performed by hardware or software. When a series of processing is performed by software, a program constituting the software is installed in a general-purpose computer, a one-chip microcomputer, or the like.
[0105]
FIG. 7 shows a configuration example of an embodiment of a computer in which a program for executing the above-described series of processing is installed.
[0106]
The program can be recorded in advance in a hard disk 105 or a ROM 103 as a recording medium built in the computer.
[0107]
Alternatively, the program is stored temporarily on a removable recording medium 111 such as a floppy disk, a CD-ROM (Compact Disc Read Only Memory), an MO (Magneto optical) disc, a DVD (Digital Versatile Disc), a magnetic disc, or a semiconductor memory. It can be stored permanently (recorded). Such a removable recording medium 111 can be provided as so-called package software.
[0108]
The program is installed in the computer from the removable recording medium 111 as described above, or transferred from the download site to the computer wirelessly via a digital satellite broadcasting artificial satellite, LAN (Local Area Network), The program can be transferred to a computer via a network such as the Internet, and the computer can receive the program transferred in this way by the communication unit 108 and install it in the built-in hard disk 105.
[0109]
The computer includes a CPU (Central Processing Unit) 102. An input / output interface 110 is connected to the CPU 102 via the bus 101, and the CPU 102 allows the user to operate an input unit 107 including a keyboard, a mouse, and the like via the input / output interface 110. When a command is input by the above, a program stored in a ROM (Read Only Memory) 103 is executed accordingly. Alternatively, the CPU 102 also transfers from a program stored in the hard disk 105, a program transferred from a satellite or a network, received by the communication unit 108 and installed in the hard disk 105, or a removable recording medium 111 attached to the drive 109. The program read and installed in the hard disk 105 is loaded into a RAM (Random Access Memory) 104 and executed. Thus, the CPU 102 performs processing according to the above-described flowchart or processing performed by the configuration of the above-described block diagram. Then, the CPU 102 outputs the processing result from the output unit 106 configured with an LCD (Liquid Crystal Display), a speaker, or the like via the input / output interface 110, or from the communication unit 108 as necessary. Transmission and further recording on the hard disk 105 are performed.
[0110]
Here, in the present specification, the processing steps for describing a program for causing the computer to perform various processes do not necessarily have to be processed in time series in the order described in the flowcharts, but in parallel or individually. This includes processing to be executed (for example, parallel processing or processing by an object).
[0111]
Further, the program may be processed by one computer or may be distributedly processed by a plurality of computers. Furthermore, the program may be transferred to a remote computer and executed.
[0112]
【The invention's effect】
  According to the data processing device, the data processing method, and the recording medium of the present invention,Entry validity information indicating whether the entry registered is valid, the key assigned to the destination registered in the entry, and whether the key assigned to the destination registered in the entry is valid And a table having entries registered with key valid information indicating the entry having a destination that matches the destination of the data block from the table stored in the storage means, and obtained as a result of the search It is determined whether the target entry is valid based on the entry valid information registered in the target entry that is an entry, and whether the key of the target entry is valid is determined based on the key valid information registered in the target entry. If the target entry is determined to be valid, the key of the target entry is determined to be valid. Data that has been decrypted using the key registered in the entry of interest is output to the destination placed in the data block, and if it is determined that the entry of interest is not valid, the data is discarded, If it is determined that the key of the target entry is not valid, the data is discarded.Therefore, it is possible to easily limit users who can acquire data normally.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration example of an embodiment of a broadcasting system to which the present invention is applied.
FIG. 2 is a flowchart for explaining processing of the transmission system 1 of FIG. 1;
FIG. 3 is a diagram illustrating a format of a section and a section header.
4 is a block diagram illustrating a configuration example of the receiving device 22 in FIG. 1;
FIG. 5 shows a key table.
6 is a flowchart for explaining processing of the reception device 22 of FIG. 4;
FIG. 7 is a block diagram illustrating a configuration example of an embodiment of a computer to which the present invention has been applied.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 Transmission system, 2 Satellites, 3 Reception system, 4 Network, 11 Control apparatus, 12 Data server, 13 Transmission processing apparatus, 13A Encryption key table memory | storage part, 14 Antenna, 15 Line connection apparatus, 16 Cable, 21 Antenna, 22 Reception Equipment, 23 line connection equipment, 241, 242  Terminal, 31 front-end unit, 32 demultiplexer, 33 decoding LSI, 34 CPU, 35 I / F, 41 filter, 42 decoder, 43 key table storage unit, 44 checker, 45 FIFO buffer, 101 bus, 102 CPU, 103 ROM, 104 RAM, 105 hard disk, 106 output unit, 107 input unit, 108 communication unit, 109 drive, 110 input / output interface, 111 removable recording medium

Claims (7)

宛先に割り当てられた鍵を用いて暗号化されているデータとともに、そのデータの宛先が配置されたデータブロックを処理するデータ処理装置であって、
宛先と、登録されているそのエントリが有効であるかどうかを表すエントリ有効情報と、エントリに登録された宛先に割り当てられた鍵と、エントリに登録された宛先に割り当てられた前記鍵が有効かどうかを表す鍵有効情報とが登録されているエントリを有するテーブルを記憶する記憶手段と、
前記記憶手段に記憶されている前記テーブルから、前記データブロックの宛先に一致する宛先を有するエントリを検索する検索手段と、
前記検索手段による検索の結果得られたエントリである注目エントリに登録された前記エントリ有効情報に基づいて、前記注目エントリが有効かどうかを判定し、前記注目エントリに登録された前記鍵有効情報に基づいて、前記注目エントリの前記鍵が有効かどうかを判定する判定手段と、
前記判定手段において、前記注目エントリが有効であると判定された場合、前記注目エントリの前記鍵が有効であると判定されたとき、前記データブロックに配置された前記データであって、前記注目エントリに登録されている前記鍵を用いて復号された前記データを前記データブロックに配置された宛先に出力し、前記判定手段において前記注目エントリが有効でないと判定された場合、前記データを破棄し、前記判定手段において前記注目エントリの前記鍵が有効でないと判定された場合、前記データを破棄するように、前記データブロックに配置された前記データの出力を制御する出力制御手段と
を備えることを特徴とするデータ処理装置。
A data processing apparatus that processes data encrypted with a key assigned to a destination and a data block in which the destination of the data is arranged,
Entry valid information indicating whether the registered entry is valid, the key assigned to the destination registered in the entry, and whether the key assigned to the destination registered in the entry is valid Storage means for storing a table having entries in which key validity information indicating whether or not is registered ;
Search means for searching an entry having a destination that matches the destination of the data block from the table stored in the storage means ;
Based on the entry validity information registered in the entry of interest that is an entry obtained as a result of the search by the search means, it is determined whether the entry of interest is valid, and the key validity information registered in the entry of interest Determination means for determining whether or not the key of the entry of interest is valid ,
In the determination means, when it is determined that the target entry is valid, when it is determined that the key of the target entry is valid, the data arranged in the data block is the target entry. Output the data decrypted using the key registered in the data block to a destination arranged in the data block, and when the determination unit determines that the target entry is not valid, discards the data; Output control means for controlling the output of the data arranged in the data block so as to discard the data when the determination means determines that the key of the entry of interest is not valid. A data processing device.
前記注目エントリに登録されている前記鍵を用いて、暗号化されている前記データを復号する復号手段をさらに備える
ことを特徴とする請求項1に記載のデータ処理装置。
The data processing apparatus according to claim 1, further comprising decryption means for decrypting the encrypted data using the key registered in the entry of interest .
前記テーブルの各エントリには、エントリに登録された宛先に割り当てられた2以上の鍵が登録されている
ことを特徴とする請求項1に記載のデータ処理装置。
The data processing apparatus according to claim 1 , wherein each entry of the table is registered with two or more keys assigned to a destination registered in the entry .
前記テーブルの各エントリには、前記2以上鍵それぞれについて、その鍵が有効かどうかを表す鍵有効情報が登録されている
ことを特徴とする請求項3に記載のデータ処理装置。
4. The data processing apparatus according to claim 3 , wherein key validity information indicating whether or not each of the two or more keys is valid is registered in each entry of the table. 5.
1チップのIC(Integrated Circuit)で構成される
ことを特徴とする請求項1に記載のデータ処理装置。
The data processing apparatus according to claim 1, wherein the data processing apparatus is configured by a one-chip IC (Integrated Circuit).
記憶手段、検索手段、判定手段、および出力制御手段を備えるデータ処理装置のデータ処理方法であって、宛先に割り当てられた鍵を用いて暗号化されているデータとともに、そのデータの宛先が配置されたデータブロックを処理するデータ処理方法において
前記記憶手段に、宛先と、登録されているそのエントリが有効であるかどうかを表すエントリ有効情報と、エントリに登録された宛先に割り当てられた鍵と、エントリに登録された宛先に割り当てられた前記鍵が有効かどうかを表す鍵有効情報とが登録されているエントリを有するテーブルを記憶する記憶ステップと、
前記検索手段により、前記記憶手段に記憶されている前記テーブルから、前記データブロックの宛先に一致する宛先を有するエントリを検索する検索ステップと、
前記判定手段により、前記検索ステップの検索の結果得られたエントリである注目エントリに登録された前記エントリ有効情報に基づいて、前記注目エントリが有効かどうかを判定し、前記注目エントリに登録された前記鍵有効情報に基づいて、前記注目エントリの前記鍵が有効かどうかを判定する判定ステップと、
前記出力制御手段により、前記判定ステップにおいて、前記注目エントリが有効であると判定された場合、前記注目エントリの前記鍵が有効であると判定されたとき、前記データブロックに配置された前記データであって、前記注目エントリに登録されている前記鍵を用いて復号された前記データを前記データブロックに配置された宛先に出力し、前記判定ステップにおいて前記注目エントリが有効でないと判定された場合、前記データを破棄し、前記判定ステップにおいて前記注目エントリの前記鍵が有効でないと判定された場合、前記データを破棄するように、前記データブロックに配置された前記データの出力を制御する出力制御ステップと
含むことを特徴とするデータ処理方法。
A data processing method of a data processing apparatus comprising a storage means, a search means, a determination means, and an output control means, wherein the destination of the data is arranged together with the data encrypted using the key assigned to the destination the data processing method for processing data blocks,
In the storage means, a destination, entry validity information indicating whether or not the registered entry is valid, a key assigned to the destination registered in the entry, and a destination assigned to the entry registered in the entry A storage step of storing a table having entries in which key validity information indicating whether the key is valid is registered ;
A search step of searching for an entry having a destination matching the destination of the data block from the table stored in the storage unit by the search unit ;
The determination means determines whether the attention entry is valid based on the entry valid information registered in the attention entry that is an entry obtained as a result of the search in the retrieval step, and is registered in the attention entry. A determination step of determining whether the key of the entry of interest is valid based on the key validity information ;
When it is determined by the output control means in the determining step that the attention entry is valid, the data arranged in the data block is determined when the key of the attention entry is determined to be valid. And outputting the data decrypted using the key registered in the target entry to a destination arranged in the data block, and when determining that the target entry is not valid in the determination step, Output control step for controlling the output of the data arranged in the data block so as to discard the data when the data is discarded and it is determined in the determination step that the key of the entry of interest is not valid data processing method which comprises and.
宛先に割り当てられた鍵を用いて暗号化されているデータとともに、そのデータの宛先が配置されたデータブロックを処理するデータ処理であって、
宛先と、登録されているそのエントリが有効であるかどうかを表すエントリ有効情報と、エントリに登録された宛先に割り当てられた鍵と、エントリに登録された宛先に割り当てられた前記鍵が有効かどうかを表す鍵有効情報とが登録されているエントリを有するテーブルであって、記憶手段に記憶されているテーブルから、前記データブロックの宛先に一致する宛先を有するエントリを検索する検索ステップと、
前記検索ステップの検索の結果得られたエントリである注目エントリに登録された前記エントリ有効情報に基づいて、前記注目エントリが有効かどうかを判定し、前記注目エントリに登録された前記鍵有効情報に基づいて、前記注目エントリの前記鍵が有効かどうかを判定する判定ステップと、
前記判定ステップにおいて、前記注目エントリが有効であると判定された場合、前記注目エントリの前記鍵が有効であると判定されたとき、前記データブロックに配置された前記データであって、前記注目エントリに登録されている前記鍵を用いて復号された前記データを前記データブロックに配置された宛先に出力し、前記判定ステップにおいて前記注目エントリが有効でないと判定された場合、前記データを破棄し、前記判定ステップにおいて前記注目エントリの前記鍵が有効でないと判定された場合、前記データを破棄するように、前記データブロックに配置された前記データの出力を制御する出力制御ステップと
を含むデータ処理を、コンピュータに行わせるプログラムが記録されている記録媒体。
A data process for processing a data block in which a destination of the data is arranged together with data encrypted using a key assigned to the destination ,
Entry valid information indicating whether the registered entry is valid, the key assigned to the destination registered in the entry, and whether the key assigned to the destination registered in the entry is valid A search step for searching for an entry having a destination that matches the destination of the data block from a table stored in storage means, the table including entries in which key validity information representing whether or not is registered;
Based on the entry valid information registered in the target entry that is an entry obtained as a result of the search in the search step, it is determined whether the target entry is valid, and the key valid information registered in the target entry is included in the key valid information registered in the target entry. A determination step for determining whether the key of the entry of interest is valid based on :
In the determination step, when it is determined that the target entry is valid, when it is determined that the key of the target entry is valid, the data arranged in the data block is the target entry. Output the data decrypted using the key registered in the data block to a destination arranged in the data block, and when the determination step determines that the target entry is not valid, discard the data; An output control step for controlling output of the data arranged in the data block so that the data is discarded when it is determined in the determination step that the key of the entry of interest is not valid ;
A recording medium on which is recorded a program that causes a computer to perform data processing .
JP31452199A 1999-11-01 1999-11-05 Data processing apparatus, data processing method, and recording medium Expired - Fee Related JP4423517B2 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP31452199A JP4423517B2 (en) 1999-11-05 1999-11-05 Data processing apparatus, data processing method, and recording medium
US09/869,515 US7069436B1 (en) 1999-11-01 2000-11-01 Information transmission system and method, transmitting apparatus, receiving apparatus, data processing device and data processing method, and recording medium
EP00971709A EP1143659A4 (en) 1999-11-01 2000-11-01 Information transmission system and method, transmitter and receiver, data processing device and data processing method, and recorded medium
KR1020017008446A KR100798196B1 (en) 1999-11-01 2000-11-01 Information transmission system and method, transmitter and receiver, data processing device and data processing method, and recorded medium
PCT/JP2000/007682 WO2001033771A1 (en) 1999-11-01 2000-11-01 Information transmission system and method, transmitter and receiver, data processing device and data processing method, and recorded medium
CN008024952A CN1336053B (en) 1999-11-01 2000-11-01 Information transmission system and method, transmitter and receiver

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31452199A JP4423517B2 (en) 1999-11-05 1999-11-05 Data processing apparatus, data processing method, and recording medium

Publications (2)

Publication Number Publication Date
JP2001136507A JP2001136507A (en) 2001-05-18
JP4423517B2 true JP4423517B2 (en) 2010-03-03

Family

ID=18054295

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31452199A Expired - Fee Related JP4423517B2 (en) 1999-11-01 1999-11-05 Data processing apparatus, data processing method, and recording medium

Country Status (1)

Country Link
JP (1) JP4423517B2 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9100457B2 (en) 2001-03-28 2015-08-04 Qualcomm Incorporated Method and apparatus for transmission framing in a wireless communication system
US8077679B2 (en) 2001-03-28 2011-12-13 Qualcomm Incorporated Method and apparatus for providing protocol options in a wireless communication system
US8121296B2 (en) 2001-03-28 2012-02-21 Qualcomm Incorporated Method and apparatus for security in a data processing system
US7352868B2 (en) * 2001-10-09 2008-04-01 Philip Hawkes Method and apparatus for security in a data processing system
US7649829B2 (en) 2001-10-12 2010-01-19 Qualcomm Incorporated Method and system for reduction of decoding complexity in a communication system
KR100986236B1 (en) * 2002-05-21 2010-10-07 톰슨 라이센싱 Key transport tamper protection
US7599655B2 (en) 2003-01-02 2009-10-06 Qualcomm Incorporated Method and apparatus for broadcast services in a communication system
US8098818B2 (en) 2003-07-07 2012-01-17 Qualcomm Incorporated Secure registration for a multicast-broadcast-multimedia system (MBMS)
US8718279B2 (en) 2003-07-08 2014-05-06 Qualcomm Incorporated Apparatus and method for a secure broadcast system
US8724803B2 (en) 2003-09-02 2014-05-13 Qualcomm Incorporated Method and apparatus for providing authenticated challenges for broadcast-multicast communications in a communication system
JP4569232B2 (en) * 2004-09-08 2010-10-27 パナソニック株式会社 VOD system
JP5090300B2 (en) * 2008-09-17 2012-12-05 沖電気工業株式会社 Packet passage recording apparatus and method
JP2017092671A (en) * 2015-11-09 2017-05-25 住友電気工業株式会社 Broadcast receiver, broadcast reception system, broadcast reception method, and broadcast reception program

Also Published As

Publication number Publication date
JP2001136507A (en) 2001-05-18

Similar Documents

Publication Publication Date Title
KR100798196B1 (en) Information transmission system and method, transmitter and receiver, data processing device and data processing method, and recorded medium
US6477179B1 (en) Data receiving device and data receiving method
KR100782865B1 (en) Data transmission controlling method and data transmission system
JP4838422B2 (en) Transmission system
JP4423517B2 (en) Data processing apparatus, data processing method, and recording medium
JP2001218185A (en) Device and system for transferring data and program recording medium
TW200410535A (en) Terminal, data distribution system comprising such a terminal and method of re-transmitting digital data
JPH09511369A (en) Method for sending conditional access information to a decoder in a packet-based multiplex communication system
JPH10215244A (en) Information transmitter and method, information receiver and method, and information storage medium
JPWO2004086235A1 (en) Revocation information transmission method, reception method and apparatus
EP1089488B1 (en) Information processing system, information processing method, and information processing device
KR100793133B1 (en) Data receiving method and data receiving unit therefor
US8355504B2 (en) AV communication control circuit for realizing copyright protection with respect to radio LAN
JP2005295589A (en) Mechanism and apparatus for encapsulation of registration authorization in conditional access system
KR20040040381A (en) Communication device and communication method
CN100446565C (en) Data processing device and data processing method
US20140337626A1 (en) Content reproducing device, content reproducing method, and content reproducing system
KR100700301B1 (en) Transmission system
JP3466861B2 (en) Digital signal transmitting device and receiving device
JP4154753B2 (en) Data receiving apparatus and method
JP4267315B2 (en) Digital broadcast receiving system, first device, second device, and receiving method
JP2004295955A (en) Digital signal recording/reproducing device and digital signal recording/reproducing method
JP2002171504A (en) Digital broadcast device, digital broadcast receiver and a digital broadcast system comprising them, and computer-readable recoding medium
JPH11308209A (en) Signal cipher device and its method, data transmitter and its method
JP2002281476A (en) Digital broadcasting limited receiver

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090326

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091112

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091125

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees