(57)【特許請求の範囲】
【請求項１】
署名付きトランスポートストリームと、該トランスポートストリームの署名を検証するための検証パケットとを受信する受信部と、
該受信部により受信したトランスポートストリームのうち、前記検証パケットに含まれる情報に基づき、前記トランスポートストリームから特定のパケットを選び出し、該選び出したトランスポートストリームパケットから、ハッシュ値を生成する生成部と、
前記検証パケットの次の検証パケットに含まれるハッシュ値と、前記生成部により生成されたハッシュ値とを照合する照合部と、
該照合部による照合結果に基づいて、前記検証パケットから前記次の検証パケットまでの区間を検証する検証部と、を具え、
該検証部は、前記検証パケットを受信してから所定時間経過しても前記次の検証パケットを受信できない場合、当該区間を検証不可能と判定する、
ことを特徴とする受信装置。
【請求項２】
請求項１に記載の受信装置において、
前記検証パケットを受信してから前記次の検証パケットを受信するまでの時間を計測する計測部と、
前記所定時間を格納する記憶部と、を具え、
前記検証部は、前記計測部が計測している時間が、前記記憶部に格納している前記所定時間を超えた場合に、前記区間を検証不可能と判定する、
ことを特徴とする受信装置。
【請求項３】
請求項２に記載の受信装置において、
前記記憶部は、前記検証パケット間の最大送出間隔に基づく時間を前記所定時間として格納している、ことを特徴とする受信装置。
【請求項４】
請求項１に記載の受信装置において、
前記検証パケットから前記次の検証パケットまでの区間における時間を計測する計測部と、
該計測部が計測した各区間における時間を格納する記憶部と、を具え、
前記検証部は、前記計測部が計測している時間が、前記記憶部に格納している前記各区間における時間に基づいて算出される設定時間を超えた場合に、当該区間を検証不可能と判定する、ことを特徴とする受信装置。
【請求項５】
請求項４に記載の受信装置において、
前記検証部は、前記記憶部に格納している前記各区間における時間を平均した平均時間を前記設定時間として算出する、ことを特徴とする受信装置。
【請求項６】
請求項４に記載の受信装置において、
前記検証部は、前記記憶部に格納している前記各区間における時間の最大値に基づいて前記設定時間を算出する、ことを特徴とする受信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストリームの署名検証方法および受信装置に関する。
【背景技術】
【０００２】
従来、テレビやラジオなどコンテンツは、アナログ形式で放送／送信されてきた。しかしながら、最近のデジタル技術の発達に伴って、コンテンツやサービスのデータがデジタル化されるようになり、デジタルデータの形式でコンテンツやサービスが放送されるようになってきている。さらに、地上波デジタル放送が実用化され、携帯端末向けのデジタル放送であるワンセグメント放送も始まっている。
【０００３】
このようなデジタル放送では、通常の映像や音声サービス（コンテンツ）のみならず、字幕などのサービスおよびデータ放送用のデータ（コンテンツ付属情報）も放送されている。このようなコンテンツおよびコンテンツ付属情報は、パケット化され、一連のパケットとしてストリーミングで放送される。特に、地上波デジタル放送（ワンセグメント放送を含む）は、電波を用いて送信されているため、これと同じチャンネルにおいて、攻撃者が妨害電波として不正な放送波を送信した場合、一般の視聴者が使用しているデジタル放送受信端末は、正規の放送局による放送波と、攻撃者による不正な放送波とを判別することができない。図５に、例えば、従来システムにおいて不正放送が行われた場合の状況を模式的に示す。図５の（ａ）に示すように、攻撃者の不正な放送波の方が正規の放送波よりも強い環境下にある受信端末は、不正な放送波を正規の放送波であると見なして受信してしまう。従って、図５の（ｂ）に示すように、視聴者は、気付かないうちに不正な放送波に基づく映像や音声を視聴してしまい、そのような映像や音声の情報を正しいものであると認識する恐れがある。また、ワンセグメント放送の場合は、地下街や屋内などの都市部における難視聴エリア向けの中継装置やギャップフィラーなどの送信装置の普及が予想される。さらには、ワンセグメント放送の場合、店舗や商業施設での狭い受信エリアを対象として独自放送を行う小型の送信装置も開発されている。このような様々なタイプの送信装置からの放送波を受信する受信装置には、受信している放送波が、正規の放送局からの放送波であるか否か、或いは、信頼し得る事業者からの放送波であるか否かを区別する機能があれば、ユーザにとって便利であるが、このような仕組みや技術は開発されていない。
【０００４】
このように、不正な放送波により、正規の放送局への成りすまし、データ改竄、悪意のあるサイトへの誘導（フィッシング詐欺）などが問題になる可能性がある。特に、字幕放送、データ放送などのデータは、経済活動において重要な情報（テレビ／ラジオショッピングなどで販売される商品の名称、仕様や価格、或いは、株価や経済統計などの経済指標、電話番号やウェブサイトのアドレスなど）が配信される。これによって視聴者と企業との間で様々な経済活動が営まれることが多く、放送波の内容の正当性や信頼性（即ち、コンテンツやコンテンツ付属情報の非改竄性）を保証することは非常に重要である。例えば、データ放送は、ＢＭＬ（Broadcast Markup Language）で放送されるため、ＢＭＬで記述されたスクリプトが、放送とは無関係なリンク先ＵＲＬへジャンプさせる命令や、不必要なアプリケーションを起動させる命令などの、不正なコードに置き換えられる可能性がある。このような本来の動作とは異なる動作を防ぐことも、非常に重要である。
【０００５】
そこで、放送波の正当性や安全性を保証するため、ストリームにある程度定期的に挿入されるヌルパケットを、特定のパケットを用いて計算したハッシュ値（署名情報）を含む検証パケットで置き換え、当該検証パケットを含むストリームを送信側で送信し、前記特定のパケットを用いて計算したハッシュ値と、検証パケットに含まれるハッシュ値とを、受信側で比較して認証することで、改竄の有無を確かめる技術を本出願人は開発した。
【０００６】
本出願人が開発した技術によってストリーム転送方式のパケットにハッシュ値を付加する技法を説明する。図６は、送信側でのハッシュ値計算手法を説明する図である。図６の上段に示すように、オリジナルメッセージ（元のTSパケット）は、パケットＰ０（ヌルパケット）、Ｐ１（PID=A）、Ｐ２（PID=B）、Ｐ３（PID=A）、Ｐ４（PID=C）、Ｐ５（PID=A）、Ｐ６（ヌルパケット）、Ｐ７（PID=A）、Ｐ８（PID=B）、Ｐ９（PID=A）、Ｐ１０（PID=B）、Ｐ１１（ヌルパケット）の順のパケットストリームである。この場合、検証パケット間［VP-VP］の署名検証区間にはパケットＰ１〜Ｐ１０が存在する。ヌルパケットのパケットＰ０を、VPパケットに置換する。このVPパケットは、ハッシュ値を計算するある特定のパケットを指定する識別子（PID＝A，n＝４）、および自己に先行する区間のためのハッシュ値Ｈを含む。送信側では、識別子に従って、PID（パケットID）がAのTSパケットを順次にn個まで選び出して、連鎖的にハッシュ値を生成し、生成したハッシュ値を含む検証パケットで、パケットＰ１１（ヌルパケット）を置換する。具体的には、まず、図６の下段に示すように、パケットＰ１（PID=A）のペイロード部に格納されているメッセージ（１８４バイト）から、所定のハッシュ関数を用いて１６バイトのハッシュ値ｈ１を生成する。次に、ハッシュ値ｈ１とパケットＰ３（PID=A）のメッセージｍ１（１８４バイト）とから、ハッシュ値ｈ２を生成する。同様に、ハッシュ値ｈ２とパケットＰ５（PID=A）のメッセージｍ２（１８４バイト）とから、ハッシュ値ｈ３を生成し、さらに、ハッシュ値ｈ３とパケットＰ７（PID=A）のメッセージｍ３（１８４バイト）とから、ハッシュ値ｈ４を生成する。区間内のn個のパケットを処理し終えたため、最後のハッシュ値ｈ４を最終的なハッシュ値Ｈとし、このハッシュ値Ｈを含む検証パケット（VP）で、パケットＰ１１（ヌルパケット）を置換する。そして、これらのパケットをストリームとして送信する。
【０００７】
次に、図６に示したストリームの、本出願人が開発した技術による受信処理について説明する。図７は、受信したトランスポートストリーム（TS）のメッセージからハッシュ値を計算し、メッセージの正当性を検証する手法を説明する図である。受信側では、検証パケットに含まれる識別子に従って、PIDがAのTSパケットを順次にn個まで選び出してハッシュ値ｈ4を生成し、生成したハッシュ値h4と、次に受信した検証パケット（パケットＰ１１）に含まれるハッシュ値Hとを照合する。
【０００８】
なお、放送波の正当性や安全性を保証するための従来技術として、各パケットから認証情報を導出して、導出した各認証情報をパケット毎に付加し、受信側で、パケット単位でその内容を認証して、改竄されていないことを確かめるメッセージ認証装置が提案されている（特許文献１を参照されたい）。
【特許文献１】特開２００１−２５１２９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述の本出願人が開発した技術は、検証パケットに含まれるハッシュ値を用いてストリームの正当性を判定するものであり、検証パケットが受信できないためにストリームの認証を行うことができない場合については言及していなかった。
【００１０】
上記の問題を、図を用いて説明する。図８は、署名済みのストリームの受信中に、改竄された不正なストリームを受信した場合を示す図である。図８のように、署名済みの正常なストリームに含まれるパケットＰ３を受信した後、受信装置は、不正なストリーム（パケットＰ２０〜Ｐ２８）を受信している。このような場合、不正なストリームには検証パケットが含まれていないため、受信側は署名を認証するためのハッシュ値を得ることができず、いつまでたっても署名の検証が行われないことになる。従って、受信装置は、受信中のストリームが不正なものであるか、あるいは署名済みのものであるかを認識できず、ユーザに、コンテンツの正当性を的確に通知することができなくなる。例えば、受信装置が字幕やアイコンを表示することでユーザにコンテンツの正当性を通知する場合、検証が行われないために、コンテンツが正当なものであることを示すメッセージが、不正なストリームの受信中にも変化しないことになってしまう。また、字幕やアイコンを表示しないことが正当なストリームを示している場合は、不正なストリームを受信しても何も通知（表示）されないことになってしまう。
【００１１】
そこで、本発明の目的は、上記の問題を解決し、検証パケットが受信できない場合にも、ストリームの状態（不正なストリームであるか、あるいは、不正なストリームである可能性が高いか）を認識できる技法（装置、方法）を提供することである。
【課題を解決するための手段】
【００１２】
上述した諸課題を解決すべく、第１の発明による受信装置は、
署名付きトランスポートストリームと、該トランスポートストリームの署名を検証するための検証パケットとを受信する受信部と、
該受信部により受信したトランスポートストリームのうち、前記検証パケットに含まれる情報に基づき、前記トランスポートストリームから特定のパケットを選び出し、該選び出したトランスポートストリームパケットから、ハッシュ値を生成（計算）する生成部と、
前記検証パケットの次の検証パケットに含まれるハッシュ値と、前記生成部により生成されたハッシュ値とを照合する照合部と、
該照合部による照合結果に基づいて、前記検証パケットから前記次の検証パケットまでの区間を検証する検証部と、を具え、
該検証部は、前記検証パケットを受信してから所定時間経過しても前記次の検証パケットを受信できない場合、当該区間を検証不可能と判定する、
ことを特徴とする。
【００１３】
また、第２の発明による受信装置は、
前記検証パケットを受信してから前記次の検証パケットを受信するまでの時間を計測する計測部と、
前記所定時間を格納する記憶部と、を具え、
前記検証部は、前記計測部が計測している時間が、前記記憶部に格納している前記所定時間を超えた場合に、前記区間を検証不可能と判定する、
ことを特徴とする。
【００１４】
また、第３の発明による受信装置は、
前記記憶部は、前記検証パケット間の最大送出間隔（検証パケットが送出される間隔の既定の最大値）に基づく時間を前記所定時間として格納している、
ことを特徴とする。
【００１５】
また、第４の発明による受信装置は、
前記検証パケットから前記次の検証パケットまでの区間における時間を計測する計測部と、
該計測部が計測した各区間における時間を格納する記憶部と、を具え、
前記検証部は、前記計測部が計測している時間が、前記記憶部に格納している前記各区間における時間に基づいて算出される設定時間を超えた場合に、当該区間を検証不可能と判定する、
ことを特徴とする。
【００１６】
また、第５の発明による受信装置は、
前記検証部は、前記記憶部に格納している前記各区間における時間を平均した平均時間を前記設定時間として算出する、
ことを特徴とする。
【００１７】
また、第６の発明による受信装置は、
前記検証部は、前記記憶部に格納している前記各区間における時間の最大値に基づいて前記設定時間を算出する、
ことを特徴とする。
【００１８】
上述したように本発明の解決手段を装置として説明してきたが、本発明はこれらに実質的に相当する方法、プログラム、プログラムを記録した記憶媒体としても実現し得るものであり、本発明の範囲にはこれらも包含されるものと理解されたい。
【００１９】
例えば、本発明を方法として実現させた第７の発明による署名検証方法は、
署名付きトランスポートストリームと、該トランスポートストリームの署名を検証するための検証パケットとを受信するステップと、
該受信したトランスポートストリームのうち、前記検証パケットに含まれる情報に基づき、前記トランスポートストリームから特定のパケットを選び出し、該選び出したトランスポートストリームパケットから、ハッシュ値を生成するステップと、
前記検証パケットの次の検証パケットに含まれるハッシュ値と、前記生成されたハッシュ値とを照合するステップと、
該照合結果に基づいて、前記検証パケットから前記次の検証パケットまでの区間を検証するステップと、を有し、
該検証するステップは、前記検証パケットを受信してから所定時間経過しても前記次の検証パケットを受信できない場合、当該区間を検証不可能と判定する、
ことを特徴とする。
なお、各ステップの計算や処理には、演算手段（ＣＰＵ、ＤＳＰ、ＭＰＵなどのプロセッサ）を必要に応じて使用することができる。
【発明の効果】
【００２０】
本発明によれば、検証パケットが受信できない場合にも、ストリームの状態（不正なストリームであるか、あるいは、不正なストリームである可能性が高いか）を認識することが可能となる。
【発明を実施するための最良の形態】
【００２１】
以降、諸図面を参照しながら、本発明の実施態様を詳細に説明する。本発明は、パケット（放送波）の伝送路が有線、無線であろうと適用することができるが、本発明のメリットを最も享受できるであろう、無線伝送路を用いるワンセグメント放送システムに適用した態様で説明する。ワンセグメント放送の受信機能を持つ受信装置の典型例は、携帯電話端末やノートパソコンなどである。
【００２２】
図１は、本発明の一実施態様による受信装置の基本的な構成を示すブロック図である。図に示すように、受信装置１００は、アンテナＡＮＴ１、受信部１１０、ハッシュ値計算部（生成部）１２０、パケット処理部１３０、認証部１４０、制御部１５０、メモリ１６０、出力部１７０、デコーダ１８０、および計測部１９０を具える。アンテナＡＮＴ１は、パケットを含む放送波を受信し、受信した放送波を受信部１１０に供給する。受信部１１０は、受信した放送波から信号処理（ＯＦＤＭ復調処理など）して得たトランスポートストリーム（ＴＳ）信号（TSパケット、ヌルパケットおよび検証パケット）を、ハッシュ値計算部１２０、パケット処理部１３０、およびメモリ１６０に供給する。メモリ１６０はTSパケット、ハッシュ値、所定時間t、および計測部１９０が計測した時間を格納する（詳細は後述する。）。
【００２３】
また、受信部１１０は、受信したトランスポートストリームから、コンテンツを特定する情報（例えば、プログラム・アソシエーション・テーブルＰＡＴ、プログラム・マップ・テーブルＰＭＴを格納している番組特定情報ＰＳＩ）を分離して解析し、その情報に基づいて、トランスポートストリームから、映像信号、音声信号、データ信号を分離する。デコーダ１８０は、メモリ１６０に格納されている音声パケット、映像パケット、データ放送パケットなどをデコードして、出力部１７０に設けられた表示部１７２やスピーカ１７４に供給する。
【００２４】
パケット処理部１３０は、TS信号から検証パケット（VPパケット）を抽出し、当該検証パケットに含まれている、検証パケット間の区間[VP-VP]に存在するTSパケットに対する署名情報としてのハッシュ値Ｈを取得し、取得したハッシュ値Ｈをメモリ１６０に格納しておく。ハッシュ値計算部１２０は、検証パケット間の区間[VP-VP]に存在する特定のTSパケットを連鎖的に用いて、所定の関数を用いて署名情報としてのハッシュ値を生成し、生成したハッシュ値ｈを認証部１４０に供給する。ハッシュ値計算部１２０は、新たな検証パケットを受信する毎に、同様のハッシュ値計算処理を繰り返す。特定のTSパケットは、例えば、パケットＩＤ（PID）、フラグ等で指定することができる。
【００２５】
計測部１９０は、タイマＴＩＭを具え、検証パケットを受信してから、TSパケットを受信している期間、時間の計測を継続する。計測部１９０は、検証パケットを受信する度にタイマＴＩＭをリセットし、新たな時間の計測を開始する。また、計測部１９０は、計測を開始してから、メモリ１６０に格納された所定時間tが経過すると、その旨を検証部１４４へ通知する。
【００２６】
認証部１４０は、照合部１４２および検証部１４４を具える。照合部１４２は、次の検証パケットに含まれる署名情報としてのハッシュ値Ｈと、前記生成されたハッシュ値ｈとが一致するか否かを照合する。検証部１４４は、照合部１４２による照合の結果、次の検証パケットに含まれる署名情報としてのハッシュ値Ｈと、生成されたハッシュ値ｈとが一致しない場合、当該区間を不正区間であると判定し、判定結果（照合結果）を制御部１５０に供給する。さらに、検証部１４４は、計測部１９０から、検証パケットを受信してからの時間が所定時間tを経過したとの通知を受けると、当該区間を検証不可能区間であると判定し、その旨を制御部１５０に供給する。
【００２７】
制御部１５０は、出力部１７０やデコーダ１８０へのデータの供給を制御する。即ち、制御部１５０は、認証部１４０および計測部１９０から供給された判定結果に基づき、不正区間または検証不可能区間と判定された区間のトランスポートストリームパケットを用いた、コンテンツまたはサービスの出力を停止したり、不正区間または検証不可能区間である旨を示す字幕を付加して出力したり、その旨の文字やアイコンをスーパーインポーズして出力したり、その旨を示す音声を出力したりするように、表示部１７２やスピーカ１７４を制御する。
【００２８】
図２は、図１の受信装置で実行される署名検証方法の一例を示すフローチャートである。まず、ステップＪ１１にて、ハッシュ値計算部１２０は、TSから検証パケットを選び出し、ステップＪ１２にて、計測部１９０は、タイマＴＩＭによる時間の計測を開始する。そして、ハッシュ値計算部１２０は、ループ１（ステップＪ１４，Ｊ１５）を開始する。ステップＪ１４にて、特定のTSパケットのメッセージｍ（ペイロード）と、前回のハッシュ値ｈ０（最初の実行時はヌル）とから、ステップＪ１６の終了条件を満たすまで、特定のTSパケットから、以下の所定のハッシュ関数ｆを用いてハッシュ値ｈを生成する。
ｈ＝ｆ（ｍ，ｈ０）
ここで、終了条件とは、受信した検証パケットで指定された特定のTSパケットを指定された数用いて、ハッシュ値を計算したことである。また、ハッシュ値の計算中に、ステップＪ１５にて、計測部１９０が時間の計測を開始してからの時間が、メモリ１６０に格納されている所定時間tを経過したか否かを判定し、経過したと判定された場合は、ループ１を終了する。
【００２９】
ステップJ１５にてハッシュ値の計算中に所定時間tにならずにループ１を終了すると、ステップＪ１７へ進む。ステップＪ１７にて、制御部１５０は、計測部１９０が計測している時間が、次のVPパケットを受信する前に所定時間tを経過したか否かを判定する。ステップＪ１７およびステップＪ１５にて、計測部１９０が計測している時間が所定時間tを経過したと判定された場合は、ステップＪ２１へ進み、検証部１４４は、当該区間（ステップＪ１１で検証パケットを受信してから、現時点では未受信の次の検証パケットを受信するまでの区間）を検証不可能区間であると見なし、その旨を制御部１５０へ通知する。制御部１５０は、検証部１４４の検証結果を受け、当該区間で受信しているコンテンツが検証不可能であり、不正放送を受信している可能性がある旨を出力するように、出力部１７０を制御する。なお、所定時間tとしては、送信側で予めVPパケットを送出する間隔の最大値を定めておき、当該最大送出間隔を、所定時間tに設定しておくことができる。また、この最大送出間隔は、例えば、検証パケットや他のTSパケットに含ませて送信し、受信側は、受信した当該最大送出間隔を、所定時間tと設定してもよい。このように、送出側で予め既定されたVPパケット間の送出間隔の上限値を、不正放送を受信しているか否かの判定時間とするため、VPパケット間の間隔が長いだけで実際は不正なストリームでないにもかかわらず、受信装置が誤って不正なストリームである可能性が高いと判定するのを防ぐことができる。
【００３０】
なお、ステップＪ１７にて、VPパケットを受信する前に所定時間tが経過せず、次のVPパケットを正常に受信した場合は、ステップＪ１８へ進み、パケット処理部１３０は、当該次のVPパケットに格納されている署名情報としてのハッシュ値Ｈを取得し、これをメモリ１６０に格納する。次にステップＪ１９にて、認証部１４０内の照合部１４２は、VPパケットから取得した署名情報としてのハッシュ値Ｈと、ハッシュ値計算部１２０で生成したハッシュ値ｈとが一致するか否かを照合する。取得したハッシュ値Ｈと生成したハッシュ値ｈとが一致する場合は、署名情報を正常に認証できたものとして処理を終え、制御部１５０の制御により、当該区間のTSパケットは正常にデコーダ１８０によりデコードされ、出力部１７０により出力される。取得したハッシュ値Ｈと生成したハッシュ値ｈとが一致しない場合は、ステップＪ２０に進み、照合部１４２は、当該区間を不正区間であると見なし、制御部１５０は、照合部１４２の照合結果を受け、当該区間で受信したコンテンツを出力しないように、デコーダ１８０および出力部１７０を制御する。
【００３１】
本発明による署名検証方法を、図を用いて説明する。図３は、不正なストリーム（検証パケットがないストリーム）を受信した場合の、本発明による受信処理を説明する図である。まず、VPパケット（パケットＰ０）を受信すると、計測部１９０が時間の計測を開始する。その後、署名済みのパケットＰ３を受信した後に、受信するストリームが不正なストリームに切り替わったとする。図３の中段に示すように、従来技術では、ハッシュ値が含まれるVPパケットを受信しないために署名の検証がいつまでも行われず、受信装置は、受信中のコンテンツが不正放送である旨を、ユーザに通知することができない。これに対して、本発明では、図３の下段に示すように、時間の計測を開始してから、本来VPパケット（パケットＰ１１）を受信するタイミングに近い所定時間tが経過すると、計測部１９０がその旨を検証部１４４に通知する。検証部１４４は、計測部１９０からの通知を受け、VPパケットＰ０を受信してから、次のVPパケット（図示せず）を受信するまでの区間に受信するTSパケット（パケットＰ１〜Ｐ３、およびパケットＰ３０以降のパケット）を、検証することが不可能であると判定する。制御部１５０は、検証部１４４の判定結果に基づき、表示部１７２やスピーカ１７４を制御して、現在受信している放送波が検証不可能である旨を示す字幕を付加して出力したり、その旨の文字やアイコンをスーパーインポーズして出力したり、その旨を示す音声を出力したりする。
【００３２】
上記では、所定時間tを最大送出間隔であるとして説明したが、別の実施例では、所定時間tを他の値とすることも可能である。例えば、署名済みの正常なストリームを受信している間に、計測部１９０は、VPパケット間における時間（VPパケットを受信してから、当該VPパケットの次のVPパケットを受信するまでに要する時間）を各VPパケット間で計測して、メモリ１６０に格納する。そして、検証部１４４は、メモリ１６０に格納されている各区間で計測した時間の最大値に、ある時間α秒を、当該最大値の変動幅として加算して、所定時間tと設定する。このαにより、実際は正常なストリームであって、当該最大値のα秒後には次のVPパケットが受信できるにもかかわらず、不正なストリームの可能性があるとの誤認を回避することができる。なお、αの値は、TSパケットの受信開始当初は大きく（変動幅を広く）設定しておき、VPパケットをある程度受信して実際の変動幅が当初設定していたαの値よりも小さい傾向にあれば、αの値を減らして（所定時間tを更新して）いけばよい。このように、受信中のストリームが、VPパケットの含まれていない不正なストリームの可能性が高いことを判定するための所定時間tを、VPパケット間のうちの最大値と設定することで、受信中のストリームの状態に即した不正ストリーム検出を行うことが可能となる。
【００３３】
また、さらに別の実施例では、所定時間ｔを、各VPパケット間の時間を平均化した時間に設定することもできる。すなわち、署名済みの正常なストリームを受信している間に、計測部１９０は、各VPパケット間の時間を計測して、メモリ１６０に格納し、検証部１４４は、メモリ１６０に格納されている各区間で計測した時間を平均した平均時間を、所定時間tとして設定する。平均時間は、検証パケットを受信する度に算出して更新してもよいし、メモリ１６０にある程度計測した時間をバッファしてから、更新してもよい。従って本実施例でも、受信中のストリームの状態に即した不正ストリーム検出を行うことが可能となる。
【００３４】
なお、ユーザが、受信装置１００で受信中のサービスを切り替える場合も考えられる。このことを考慮し、検証部１４４は、受信部１１０が抽出したコンテンツのコンテンツID（番組ID）が同一の間、上述した実施例のいずれかで算出した時間を所定時間tとして用い、ユーザがサービスを切り替えたためにコンテンツIDが変わった場合は、算出した時間をリセットする。そして、初めのうちは、切替え先のサービスにおいて予め設定された最大送出間隔を所定時間tとして用い、切り替えられたストリームが正常である間に、上述した実施例のように所定時間tを更新していけばよい。
【００３５】
図４に、受信装置１００の表示部１７２の表示遷移図の一例を示す。制御部１５０は、検証を開始する前の表示部１７２には、画面Ｄ１のように、例えば「未署名放送を受信中です」のような、受信中のストリームが検証前のものであることを示すメッセージを表示する。上述した署名検証方法によって、VPパケットに含まれるハッシュ値Ｈと、受信装置１００のハッシュ値計算部１２０が生成したハッシュ値ｈとが一致し、ハッシュ値の検証に成功した場合は、画面Ｄ２のように、例えば「署名の検証に成功しました」のような、受信中のストリームの認証に成功したことを示すメッセージを表示する。VPパケットに含まれるハッシュ値Ｈと生成したハッシュ値ｈとが一致せず、ハッシュ値の検証に失敗した場合は、例えば、画面Ｄ３の「不正放送を受信しています」のように、受信中のストリームが不正なストリームであることを示すメッセージを表示する。VPパケットが受信できず、従って当該VPパケットに含まれるハッシュ値Ｈが取得できずにハッシュ値の検証を実行できない場合は、上述の実施例で説明した署名検証方法により、受信中のコンテンツが不正なストリームである可能性が高いと判定することができる。従って、制御部１５０は、画面Ｄ４のような、例えば、「不正放送を受信している可能性があります」というメッセージを表示部１７２に表示する。
【００３６】
なお、図４に示したユーザへの通知例は一例に過ぎず、他の方法で通知することもできる。例えば、図４ではテキストメッセージを画面中央に表示したが、画面の端にテロップさせて表示してもよい。また、各状態を示すアイコンを予めユーザに通知しておき、当該アイコンを画面に表示することによって通知してもよい。なお、それらを通知する際、画面に映像を表示したままスーパーインポーズするようにしてもよいし、不正放送である旨、またはその可能性がある旨を通知する場合は、映像の表示を停止させて、各通知を表示してもよい。
【００３７】
なお、ハッシュ計算に用いる特定のパケットは、予め受信装置と送信装置との間で選択ルールを決定しておき、その選択ルールに応じて選択すればよい。本発明は、署名情報としてのハッシュ値を含むVPパケットを受信し、当該ハッシュ値を用いてストリームの正当性を判定する署名検証方法全てに適用することが可能であり、ハッシュ値の計算方法については問わないものである。
【００３８】
本発明の利点を再度述べる。本発明では、不正なストリームを受信していることによりVPパケットを取得できず、署名情報の検証（すなわち、受信電波の安全性の確認）が実行できない場合でも、不正なストリームを受信している可能性があることを認識して、ユーザにその旨を通知するため、不正なストリームであることを認識できずに受信し続ける従来技術と比べ、ユーザビリティを向上させることができる。また、不正なストリームを受信している可能性があることを判定するのに、受信側にタイマを付加し、受信側は、VPパケットを受信する毎に当該タイマをリセットするだけであるため、容易に実装することができる。さらに、この不正なストリームであるか否かの判定は、受信装置のみで行うことができるため、パケットを生成する送信側に特別な処理を課することがない。
【００３９】
本発明を諸図面や実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。従って、これらの変形や修正は本発明の範囲に含まれることに留意されたい。例えば、各部、各手段、各ステップなどに含まれる機能などは論理的に矛盾しないように再配置可能であり、複数の手段やステップなどを１つに組み合わせたり、或いは分割したりすることが可能である。
【００４０】
すなわち、実施態様では、特定のパケットとして映像信号のパケットを示すPIDを利用したが、音声信号のパケットを示すPIDやデータ放送信号のパケットを示すPIDなどを用いたり、或いは、区間が更新される毎に、映像信号を示すパケット、音声信号を示すパケット、データ放送信号を示すパケットのうちのからランダムにPIDを選択したりしてもよく、ハッシュ値の生成方法については問わない。また、実施態様では、ユーザへの通知方法としてテキストメッセージ表示を用いたが、音声によって通知してもよい。
【図面の簡単な説明】
【００４１】
【図１】本発明の実施態様による受信装置の基本的な構成を示すブロック図である。
【図２】図１の受信装置で実行される署名検証方法の一例を示すフローチャートである。
【図３】本発明の実施態様による、不正なトランスポートストリーム（TS）を受信している可能性が高いことを検出する手法を説明する図である。
【図４】図１の受信装置の表示部の遷移図の一例である。
【図５】従来システムにおける不正放送受信を模式的に示す図である。
【図６】トランスポートストリーム（TS）のメッセージからハッシュ値を計算する手法を説明する図である。
【図７】トランスポートストリーム（TS）のメッセージからハッシュ値を計算する手法を説明する図である。
【図８】図６，７の手法の問題点を説明する図である。
【符号の説明】
【００４２】
１００  受信装置
１１０  受信部
１２０  ハッシュ値計算部
１２５  カウンタ部
１３０  パケット処理部
１４０  認証部
１４２  照合部
１４４  検証部
１５０  制御部
１６０  メモリ
１７０  出力部
１７２  表示部
１７４  スピーカ
１８０  デコーダ
１９０  計測部
ＴＩＭ  タイマ
ＡＮＴ１  アンテナ
ｈ０−４  ハッシュ値
ｍ１−３  メッセージ
Ｐ１−Ｐ１１，Ｐ２０−Ｐ２８，Ｐ３０−Ｐ３８  パケット
ＶＰ  検証パケット
Ｄ１−Ｄ４  画面
【図１】
0005101967.tif 000002
【図２】
0005101967.tif 000003
【図３】
0005101967.tif 000004
【図４】
0005101967.tif 000005
【図５】
0005101967.tif 000006
【図６】
0005101967.tif 000007
【図７】
0005101967.tif 000008
【図８】
0005101967.tif 000009