(57)【要約】  受信装置は、放送または通信により受信したデータに関する処理をする機能部と、アプリケーションプログラムを記憶するアプリケーション蓄積部と、起動指示に基づいてアプリケーション蓄積部からアプリケーションプログラムを読み出して実行するとともに、アプリケーションプログラムに基づきアプリケーションプログラミングインタフェースを介して機能部の処理を呼び出すアプリケーション実行部と、アプリケーション実行部がアプリケーションプログラミングインタフェースを介して機能部の処理を呼び出すときに、アプリケーションプログラムの属性情報に応じた判定に基づき当該呼び出しを許可するか禁止するかを制御するアプリケーションプログラミングインタフェース管理制御部と、を備える。
2012157698.tif 000002
【特許請求の範囲】
【請求項１】
放送または通信により受信したデータに関する処理をする機能部と、
アプリケーションプログラムを記憶するアプリケーション蓄積部と、
起動指示に基づいて前記アプリケーション蓄積部からアプリケーションプログラムを読み出して実行するとともに、前記アプリケーションプログラムに基づきアプリケーションプログラミングインタフェースを介して前記機能部の処理を呼び出すアプリケーション実行部と、
前記アプリケーション実行部がアプリケーションプログラミングインタフェースを介して前記機能部の処理を呼び出すときに、前記アプリケーションプログラムの属性情報に応じた判定に基づき当該呼び出しを許可するか禁止するかを制御するアプリケーションプログラミングインタフェース管理制御部と、
を備える受信装置。
【請求項２】
前記アプリケーションプログラムを識別するアプリケーション識別情報と前記属性情報とを対応づけて記憶するアプリケーション属性格納部と、
前記アプリケーション蓄積部に記憶されたアプリケーションプログラム毎に付与したアプリケーション識別情報と、前記アプリケーションプログラムの前記属性情報とを対応づけて前記アプリケーション属性格納部に書き込むアプリケーション属性管理部と、
前記起動指示に基づいて、指示された前記アプリケーション識別情報に対応づけられた前記属性情報を前記アプリケーション属性格納部から読み出して前記アプリケーションプログラミングインタフェース管理制御部に通知するアプリケーション制御部と、
をさらに備える請求項１に記載の受信装置。
【請求項３】
放送信号を受信する放送受信部をさらに備え、
前記アプリケーションプログラミングインタフェース管理制御部は、前記放送受信部が受信中の編成チャンネルにも応じて前記判定を行う請求項１に記載の受信装置。
【請求項４】
前記アプリケーションプログラミングインタフェース管理制御部は、
前記アプリケーションプログラミングインタフェースの識別情報とアクセスを許可するか禁止するかを属性情報毎に示すアクセス許可情報とを対応づけたアプリケーションプログラミングインタフェース制御リストデータを記憶するアプリケーションプログラミングインタフェース制御リスト格納部と、
前記アプリケーションプログラミングインタフェース制御リストデータを受信して、前記アプリケーションプログラミングインタフェース制御リスト格納部に記憶される前記アプリケーションプログラミングインタフェース制御リストを更新するアプリケーション制御リスト管理部とをさらに備え、
前記アプリケーションプログラミングインタフェース管理制御部は、前記アプリケーション実行部が実行している前記アプリケーションプログラムの前記属性情報と前記機能部の処理の呼び出しに用いた前記アプリケーションプログラミングインタフェースの識別情報とに基づいて、前記アプリケーションプログラミングインタフェース制御リスト格納部に記憶される前記アプリケーションプログラミングインタフェース制御リストデータから呼び出しを許可するか禁止するかを示すデータを読み出す請求項１に記載の受信装置。
【請求項５】
放送または通信により受信したデータに関する処理をする機能部を有する受信装置に用いられるコンピュータを、
アプリケーションプログラムを記憶するアプリケーション蓄積部、
起動指示に基づいて前記アプリケーション蓄積部からアプリケーションプログラムを読み出して実行するとともに、前記アプリケーションプログラムに基づきアプリケーションプログラミングインタフェースを介して前記機能部の処理を呼び出すアプリケーション実行部、
前記アプリケーション実行部がアプリケーションプログラミングインタフェースを介して前記機能部の処理を呼び出すときに、前記アプリケーションプログラムの属性情報に応じた判定に基づき当該呼び出しを許可するか禁止するかを制御するアプリケーションプログラミングインタフェース管理制御部、
として機能させるプログラム。
【請求項６】
アプリケーションプログラミングインタフェースを介して、放送または通信により受信したデータに関する処理をする機能部の処理を呼び出すときに、アプリケーションプログラムの属性情報に応じた判定に基づき当該呼び出しを許可するか禁止するかを判定し、
前記呼び出しを許可すると判定した場合に、起動指示に基づいて、前記アプリケーションプログラムを読み出して実行するとともに、前記アプリケーションプログラムに基づき前記アプリケーションプログラミングインタフェースを介して前記機能部の処理を呼び出す受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信装置、プログラム及び受信方法に関する。
本願は、２０１１年５月１８日に、日本に出願された特願２０１１−１１１３４２号に基づき優先権を主張し、その内容をここに援用する。
【背景技術】
【０００２】
近年の放送のデジタル化と通信のブロードバンド化の進展に伴い、放送通信連携サービスの実現に向けた研究開発が行われている。放送通信連携サービスとしては、日本のＨｙｂｒｉｄｃａｓｔ（登録商標）（ハイブリッドキャスト）や、欧州のＨｂｂＴＶ（Hybrid Broadcast Broadband TV：ハイブリッドブロードキャストブロードバンドテレビ）などが知られている。また、放送受信機能に加え、アプリケーションを用いて様々な通信サービスを活用することができる「スマートテレビ」と呼ばれる高機能テレビの普及も始まっている。それぞれのユーザは、放送以外のサービスを利用することができるこのような高機能テレビに、ポータルサイトなどを経由して配布されるアプリケーションリストから選択したアプリケーションを追加する。
追加したアプリケーションを高機能テレビが実行することにより、様々な通信サービスを活用できる。【０００３】
上記のようにアプリケーションを導入してサービスを拡張するプラットフォームや、プラットフォームを構成するデバイスに、ＡＰＩ（Application Programming Interface：アプリケーションプログラミングインタフェース）が設けられることがある。ＡＰＩは、アプリケーションからプラットフォームやデバイスの機能を利用するためのインタフェースである。このようなＡＰＩが設けられることで、アプリケーションからプラットフォームやデバイスの機能を扱うためのソフトウェアの設計およびコーディング作業を簡略化することができる。従って、アプリケーションの制作を効率化することが可能となる。このような概念は、放送通信連携を想定した受信機においても検討されている。例えば、特許文献１では、データ放送ブラウザと受信機の通信機能との間にＡＰＩを設けることにより、放送と関連した情報を通信によって容易に取得し、利用するしくみを開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１４８１４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１では、受信機の機能に対してＡＰＩを設け、それらのＡＰＩを公開してアクセスを許可することにより、受信機上で動作するアプリケーションの制作作業を効率化する。また、ＡＰＩの数を増やすことにより、アプリケーションの多様性を高めている。しかし、アクセスを許可するＡＰＩを無制限にすると、受信機の機能や、受信機で処理するデータやコンテンツが不正に利用されるリスクが高まるという欠点もある。例えば、受信機が放送で受信した映像を読み込むＡＰＩへのアクセスを無制限に許可した場合、そのＡＰＩを用いて映像を取得し、取得した映像を複製してインターネット上に配信するような、著作権を侵害するアプリケーションが制作されるというリスクも考えられる。逆にリスクを高く見積もり、アクセスを許可するＡＰＩの種類を制限してしまうと、アプリケーションの多様性を失うことが想定される。このように、受信機のＡＰＩへのアクセスの許可や禁止の制御を、すべてのアプリケーションに対して同等に行うだけでは、アプリケーションの多様性とサービスに対するリスクを鑑みたときに、柔軟に両者のバランスをとることができないという問題がある。【０００６】
本発明は、このような事情を考慮してなされたもので、利用を許可するＡＰＩを、アプリケーションに応じて制限することができる受信装置、プログラム及び受信方法を提供する。
【課題を解決するための手段】
【０００７】
［１］  本発明の第１の態様は、放送または通信により受信したデータに関する処理をする機能部と、アプリケーションプログラムを記憶するアプリケーション蓄積部と、起動指示に基づいて前記アプリケーション蓄積部からアプリケーションプログラムを読み出して実行するとともに、前記アプリケーションプログラムに基づきアプリケーションプログラミングインタフェースを介して前記機能部の処理を呼び出すアプリケーション実行部と、前記アプリケーション実行部がアプリケーションプログラミングインタフェースを介して前記機能部の処理を呼び出すときに、前記アプリケーションプログラムの属性情報に応じた判定に基づき当該呼び出しを許可するか禁止するかを制御するアプリケーションプログラミングインタフェース管理制御部と、を備える受信装置である。【０００８】
第１の態様によれば、受信装置は、この受信装置内で実行されるアプリケーションが、この受信装置が有する機能を利用するためのＡＰＩやこの受信装置における処理対象の情報（放送信号や蓄積データなど）を扱う機能を利用するためのＡＰＩにアクセスしようとした際に、アプリケーションの属性に応じてＡＰＩ（機能）へのアクセス可否を制御する。【０００９】
これにより、受信装置は、アプリケーションからのＡＰＩの利用可否をアプリケーションの属性単位で制御することができる。例えば、受信装置は、アプリケーションの属性を、アプリケーションＩＤ、認証されたアプリケーションであるか否か、アプリケーションを提供するサービス事業者、アプリケーションの種別、アプリケーションの配付方法などに応じて決定する。【００１０】
［２］  なお、第１の態様において、前記アプリケーションプログラムを識別するアプリケーション識別情報と前記属性情報とを対応づけて記憶するアプリケーション属性格納部と、前記アプリケーション蓄積部に記憶されたアプリケーションプログラム毎に付与したアプリケーション識別情報と、前記アプリケーションプログラムの前記属性情報とを対応づけて前記アプリケーション属性格納部に書き込むアプリケーション属性管理部と、前記起動指示に基づいて、指示された前記アプリケーション識別情報に対応づけられた前記属性情報を前記アプリケーション属性格納部から読み出して前記アプリケーションプログラミングインタフェース管理制御部に通知するアプリケーション制御部と、をさらに備えても良い。
これによれば、受信装置は、アプリケーションプログラムを取得した各アプリケーションの属性を管理する。【００１１】
これにより、受信装置において実行されているアプリケーションがＡＰＩにアクセスする際に、確実にそのアプリケーションの属性を取得することができる。また、受信装置は、予め属性を記憶しておくため、アプリケーションがＡＰＩへアクセスしようとした際、ＡＰＩへのアクセス可否を判定するためにかかる時間を短縮することができる。【００１２】
［３］  また、第１の態様において、放送信号を受信する放送受信部をさらに備え、前記アプリケーションプログラミングインタフェース管理制御部は、前記放送受信部が受信中の編成チャンネルにも応じて前記判定を行っても良い。
これによれば、受信装置は、受信中の放送の編成チャンネルに従って、アプリケーションの属性に応じたＡＰＩへのアクセス可否を制御する。【００１３】
これにより、受信装置は、放送に連動して動作するアプリケーションがＡＰＩを利用する際にも、その放送の編成チャンネル毎に、アプリケーションからのＡＰＩの利用可否を制御することができる。【００１４】
［４］  また、第１の態様において、前記アプリケーションプログラミングインタフェース管理制御部は、前記アプリケーションプログラミングインタフェースの識別情報とアクセスを許可するか禁止するかを属性情報毎に示すアクセス許可情報とを対応づけたアプリケーションプログラミングインタフェース制御リストデータを記憶するアプリケーションプログラミングインタフェース制御リスト格納部と、前記アプリケーションプログラミングインタフェース制御リストデータを受信して、前記アプリケーションプログラミングインタフェース制御リスト格納部に記憶される前記アプリケーションプログラミングインタフェース制御リストを更新するアプリケーション制御リスト管理部とをさらに備え、前記アプリケーションプログラミングインタフェース管理制御部は、前記アプリケーション実行部が実行している前記アプリケーションプログラムの前記属性情報と前記機能部の処理の呼び出しに用いた前記アプリケーションプログラミングインタフェースの識別情報とに基づいて、前記アプリケーションプログラミングインタフェース制御リスト格納部に記憶される前記アプリケーションプログラミングインタフェース制御リストデータから呼び出しを許可するか禁止するかを示すデータを読み出しても良い。【００１５】
これによれば、受信装置は、アプリケーションプログラミングインタフェース制御リストデータを記憶するアプリケーションプログラミングインタフェース制御リスト格納部を備える。よって、受信装置は、機能部の処理を呼び出す際における呼び出しを許可するか禁止するかについての判定を、アプリケーションプログラミングインタフェース制御リストデータに示されるデータに基づいて処理することができる。【００１６】
さらに、受信装置は、アプリケーションプログラミングインタフェース制御リストデータを受信及び更新するアプリケーション制御リスト管理部を備える。よって、受信装置は、アプリケーションプログラミングインタフェース制御リスト格納部に記憶されるアプリケーションプログラミングインタフェース制御リストデータを更新することができる。【００１７】
つまり、この受信装置によれば、新しいアプリケーションプログラミングインタフェース制御リストデータを当該受信装置に送信すれば、その新しいアプリケーションプログラミングインタフェース制御リストデータに基づいて、ＡＰＩ（機能）へのアクセス可否を制御することが可能となる。
これにより、各アプリケーションのＡＰＩ利用可能範囲を随時変更可能な受信装置を提供することができる。【００１８】
［５］  本発明の第２の態様は、放送または通信により受信したデータに関する処理をする機能部を有する受信装置に用いられるコンピュータを、アプリケーションプログラムを記憶するアプリケーション蓄積部、起動指示に基づいて前記アプリケーション蓄積部からアプリケーションプログラムを読み出して実行するとともに、前記アプリケーションプログラムに基づきアプリケーションプログラミングインタフェースを介して前記機能部の処理を呼び出すアプリケーション実行部、前記アプリケーション実行部がアプリケーションプログラミングインタフェースを介して前記機能部の処理を呼び出すときに、前記アプリケーションプログラムの属性情報に応じた判定に基づき当該呼び出しを許可するか禁止するかを制御するアプリケーションプログラミングインタフェース管理制御部、として機能させるプログラムである。【００１９】
［６］  本発明の第３の態様は、アプリケーションプログラミングインタフェースを介して、放送または通信により受信したデータに関する処理をする機能部の処理を呼び出すときに、アプリケーションプログラムの属性情報に応じた判定に基づき当該呼び出しを許可するか禁止するかを判定し、前記呼び出しを許可すると判定した場合に、起動指示に基づいて、前記アプリケーションプログラムを読み出して実行するとともに、前記アプリケーションプログラムに基づき前記アプリケーションプログラミングインタフェースを介して前記機能部の処理を呼び出す受信方法である。
【発明の効果】
【００２０】
本発明によれば、利用を許可するＡＰＩを、アプリケーションに応じて制限することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態による放送通信連携システムの全体構成図である。
【図２】同実施形態による受信装置の機能ブロック図である。
【図３】同実施形態によるアプリケーション制御機構の機能ブロック図である。
【図４】同実施形態によるＡＰＩリストデータのデータ例を示す図である。
【図５】同実施形態によるＡＰＩ制御リストデータのデータ例を示す図である。
【図６】同実施形態による受信装置におけるアプリケーション属性管理処理を示すフローチャートである。
【図７】同実施形態による受信装置におけるＡＰＩアクセス制御処理を示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下、図面を参照しながら本発明の実施形態を詳細に説明する。
図１は、本発明の一実施形態による放送通信連携システムの全体構成図である。図１に示すように、放送通信連携システムは、放送送出装置１、アプリケーション配信装置２、コンテンツ配信装置３及び受信装置４を備える。アプリケーション配信装置２及びコンテンツ配信装置３は、インターネットなどの通信ネットワーク９を介して受信装置４と接続される。図１においては、放送送出装置１、アプリケーション配信装置２、コンテンツ配信装置３及び受信装置４をそれぞれ１台のみ示しているが、現実には複数台が設けられる。放送送出装置１は、放送事業者ごとに設けられる。アプリケーション配信装置２およびコンテンツ配信装置３は、サービス事業者ごとに設けられる。なお、放送事業者とサービス事業者が同一となることもありうる。受信装置４は、視聴者であるユーザが保有する。
【００２３】
放送送出装置１は、放送事業者の放送設備であり、映像、音声、データ放送などを多重、変調し、放送波として送信する。アプリケーション配信装置２は、受信装置４上で実行されるアプリケーションのアプリケーションプログラムを、通信ネットワーク９を経由して受信装置４に配信するコンピュータサーバである。アプリケーションプログラムは、例えば、アプリケーション実行ファイルのみからなるものや、アプリケーション実行ファイルと画像ファイルなどの一連のファイルからなるものなどがある。コンテンツ配信装置３は、受信装置４上で実行されるアプリケーションが利用する映像、音声、テキストなどのコンテンツデータや他のデータ（以下、アプリケーションが利用するコンテンツデータや他のデータを総称して「コンテンツデータ」と記載する。）を、通信ネットワーク９を経由して受信装置４に配信するコンピュータサーバ（コンテンツ配信サーバ）である。
【００２４】
受信装置４は、放送通信連携サービスを利用できる受信機であり、例えば、テレビ、セットトップボックス、パーソナルコンピュータ、携帯端末等のデバイスである。受信装置４は、放送送出装置１から送出（送信）される放送波を受信するとともに、通信ネットワーク９を介して接続されるアプリケーション配信装置２やコンテンツ配信装置３との間でデータの送受信を行う。
【００２５】
本実施形態の放送通信連携システムは、放送通信連携サービスを実現する。放送通信連携サービスの形態は複数存在するが、本実施形態では、デジタル放送サービスと、インターネットなどによる通信サービスとを受信装置４において連携する。受信装置４は、放送送出装置１からの放送波により放送で配信されるアプリケーションプログラム、または、アプリケーション配信装置２から通信ネットワーク９を経由して通信で配信されるアプリケーションプログラムを実行する。アプリケーションプログラムを実行することで、受信装置４は、通信ネットワーク９上のコンテンツデータをコンテンツ配信装置３から取得し、コンテンツデータの映像や音声を、放送番組の映像や音声と同時に出力する。これによって、ユーザは、放送通信連携サービスを利用することができる。
【００２６】
アプリケーションプログラムは複数のサービス事業者から配信される。ここでは事業者Ａ、Ｂ、Ｃの３つのサービス事業者それぞれのアプリケーション配信装置２からアプリケーションプログラムが配信される場合を説明する。
受信装置４は、この受信装置４内の複数の機能それぞれに対してＡＰＩ（Application Programming Interface：アプリケーションプログラミングインタフェース）を設けている。受信装置４がアプリケーションプログラムを実行することによって、アプリケーションがＡＰＩを利用するためのＡＰＩアクセスが実行される。これにより、アプリケーションは、受信装置４が有する機能や、受信装置４内で処理対象としている情報を扱う機能を利用することができる。その上で、受信装置４は、アプリケーションの属性に応じてＡＰＩの利用範囲が異なるように制御する。例えば、事業者Ａが配付したアプリケーションはすべてのＡＰＩを利用可能とし、他の事業者Ｂ及び事業者Ｃが配布したアプリケーションは所定の一部のＡＰＩのみを利用可能とするように、受信装置４を実現する。
【００２７】
また、放送通信連携サービスでは、サービスの主体となる放送サービスを提供する放送事業者ごとに、各アプリケーションのＡＰＩ利用可能範囲の差別化に対する考え方が異なる場合がある。例えば、編成チャンネル「００１」を保有する放送事業者αでは、事業者ＡのアプリケーションについてはすべてのＡＰＩを利用可能とするが、その他のサービス事業者のアプリケーションについては一部のＡＰＩのみ利用可能とする。それに対して、編成チャンネル「００２」を保有する放送事業者βでは、事業者Ａ、Ｂ、Ｃを含むすべてのサービス事業者のアプリケーションについてすべてのＡＰＩを利用可能とする。このように、放送事業者間の考え方の違いが生じることが想定される。そこで、放送事業者（編成チャンネル）毎に、アプリケーションの属性に基づくＡＰＩ利用可能範囲が異なるように制御する受信装置４を実現する。
【００２８】
図２は、受信装置４の内部構成を示すブロック図である。図２に示すように、受信装置４は、ユーザ入力部４０１、放送受信部４０２、選局部４０３、分離部４０４、通信入出力部４０５、ＢＭＬ（Broadcast Markup Language）ブラウザ部４０６、ＨＴＭＬ（Hypertext Markup Language）ブラウザ部４０７、アプリケーション管理部４０８、アプリケーション制御部４０９、アプリケーション実行部４１０、ＡＰＩ管理制御部４１１、表示制御部４１２、映像表示部４１３、音声制御部４１４、音声出力部４１５及びデータ蓄積部４１６を備える。
なお、図２中の丸印は、ＡＰＩを示している。
【００２９】
ユーザ入力部４０１は、ユーザによる操作を受けるインタフェースである。ユーザ入力部４０１は、例えば、リモコン、キーボード、マウス、携帯電話、タブレット端末などにより入力されたデータを受ける。
【００３０】
放送受信部４０２は、一般的なチューナであり、デジタル放送の放送信号を受信し、復調する。選局部４０３は、ユーザ入力部４０１が受けたユーザの操作に従って、放送受信部４０２が受信するメディアやチャンネルを制御する。メディアには、地上、ＢＳ（放送衛星）、ＣＳ（通信衛星）などがある。分離部４０４は、一般的なデマルチプレクサであり、放送受信部４０２において復調され、出力されたＭＰＥＧ（Moving Picture Experts Group）−２  ＴＳ（Transport Stream）信号を、番組を構成するコンテンツデータや、番組情報等に分離する。番組を構成するコンテンツデータは、映像データ、音声データ、データ放送、字幕データなどである。番組情報は、ＰＳＩ／ＳＩ（Program Specific Information／Service Information）などである。
【００３１】
通信入出力部４０５は、通信ネットワーク９に接続するためのインタフェースである。
通信入出力部４０５は、通信ネットワーク９を経由してアプリケーション配信装置２やコンテンツ配信装置３との間でデータを送受信する。
【００３２】
ＢＭＬブラウザ部４０６は、ＢＭＬで記述されたデータ放送を表示するためのブラウザを提供し、ユーザ入力部４０１が受けたユーザの操作に従ってブラウザを動作させる。
ＨＴＭＬブラウザ部４０７は、一般的なＨＴＭＬブラウザを提供する。ＨＴＭＬブラウザ部４０７が提供するＨＴＭＬブラウザは、通信ネットワーク９を経由してアプリケーション配信装置２や、図示しないコンピュータサーバから受信したウェブデータを表示する。
【００３３】
アプリケーション管理部４０８は、放送や通信で配信されたアプリケーションプログラムを蓄積するか、あるいは一時的にキャッシュして管理する。このとき、アプリケーション管理部４０８は、ユーザがアプリケーションを選択あるいは操作したり、アプリケーション実行部４１０において実行したりするために、アプリケーションにアプリケーション番号を付与する。アプリケーション番号は、受信装置４内にアプリケーションプログラムが蓄積されたアプリケーションに対して一意の番号である。さらに、アプリケーション管理部４０８は、アプリケーションの属性を判定し、判定した属性を示す属性情報と、付与したアプリケーション番号を示すアプリケーション番号情報とを対応づけて管理する。アプリケーション番号情報は、受信装置４内でアプリケーションを一意に特定するアプリケーション識別情報として用いられる。
【００３４】
アプリケーション制御部４０９は、アプリケーション実行部４１０によるアプリケーションの起動や停止、アプリケーション実行中の動作を制御する。アプリケーション実行中の動作の制御は、ユーザ入力部４０１が受けたユーザの操作、または、放送信号により含まれる情報に従って行われる。また、アプリケーション制御部４０９は、アプリケーションを起動する時、アプリケーション管理部４０８に問い合わせてその起動するアプリケーションの属性情報を得ると、得られた属性情報と、起動するアプリケーションのアプリケーション番号情報とをＡＰＩ管理制御部４１１に通知する。
【００３５】
アプリケーション実行部４１０は、アプリケーションの起動指示を受け、アプリケーション管理部４０８が管理しているアプリケーションプログラムを読み出して実行する。アプリケーション実行部４１０がアプリケーションプログラムを実行することにより、アプリケーションからＡＰＩにアクセスする際には、アプリケーション番号情報とアクセス対象のＡＰＩを特定するＡＰＩ識別情報とをＡＰＩ管理制御部４１１に通知する。本実施形態では、ＡＰＩ識別情報はＡＰＩ名を示す。
【００３６】
ＡＰＩ管理制御部４１１は、受信装置４の各機能部（モジュール）が機能の提供に用いるＡＰＩを管理するとともに、ＡＰＩへのアクセスを許可するか禁止するかをアプリケーションの属性毎に管理する。また、ＡＰＩ管理制御部４１１は、アプリケーションがＡＰＩにアクセスしようとした時に、そのアプリケーションの属性に基づいてＡＰＩへのアクセスを許可するか否かのアクセス制御を行う。
【００３７】
表示制御部４１２は、映像表示部４１３に表示させる映像の大きさやレイアウトを制御する。ここでは、放送で受信した映像データ、データ放送、字幕データの映像、さらに、実行中のアプリケーションが出力する画面、実行中のアプリケーションが取得したコンテンツデータの画面、ＨＴＭＬブラウザのウィンドウ画面が制御対象となる。また、表示制御部４１２は、ユーザ入力部４０１が受け付けたユーザの操作に従った画面のレイアウトの制御も行う。
映像表示部４１３は、一般的なディスプレイであり、表示制御部４１２により制御された映像を表示する。
【００３８】
音声制御部４１４は、音声出力部４１５に出力する音声の音量やバランスを制御する。
ここでは、放送で受信した音声データの音声、実行中のアプリケーションが出力する音声データの音声や実行中のアプリケーションが取得したコンテンツデータの音声、ＨＴＭＬブラウザから出力される音声データの音声が制御対象となる。
音声出力部４１５は、一般的なスピーカーあり、音声制御部４１４で制御された音声を出力する。
データ蓄積部４１６は、ユーザの個人情報などの各種情報を保存管理する。
【００３９】
ユーザ入力部４０１、放送受信部４０２、選局部４０３、分離部４０４、通信入出力部４０５、ＨＴＭＬブラウザ部４０７、表示制御部４１２、音声制御部４１４、データ蓄積部４１６は、ＡＰＩを提供（実装）する。これらの機能部（モジュール）は、実行中のアプリケーションからのＡＰＩアクセスがＡＰＩ管理制御部４１１により許可された場合、アクセスされたＡＰＩに対応した機能を実行する。
【００４０】
アプリケーション管理部４０８、アプリケーション制御部４０９、アプリケーション実行部４１０、及び、ＡＰＩ管理制御部４１１からなる機能部（モジュール）の集合を、アプリケーション制御機構４００と呼ぶ。アプリケーション制御機構４００により、アプリケーションの属性に基づいたＡＰＩ利用可能範囲の制御を行う。
【００４１】
図３は、アプリケーション管理部４０８、アプリケーション実行部４１０及びＡＰＩ管理制御部４１１で構成されるアプリケーション制御機構４００の詳細な構成を示す機能ブロック図である。
【００４２】
アプリケーション管理部４０８は、アプリケーション蓄積部４５１及びアプリケーション属性管理部４５２を備える。
アプリケーション蓄積部４５１は、受信装置４が実行するアプリケーションのアプリケーションプログラムを管理する。なお、アプリケーションには、実行に先立って受信装置４にアプリケーションプログラムをインストールしておくインストール型と、アプリケーションの実行のたびにアプリケーションプログラムを取得するオンザフライ型がある。インストール型の場合、アプリケーションの終了はアプリケーションプログラムの削除の契機とはならない。オンザフライ型の場合、アプリケーションの終了を契機としてアプリケーション蓄積部４５１からアプリケーションプログラムが削除される。アプリケーション蓄積部４５１にアプリケーションプログラムが蓄積されるアプリケーションは、受信装置４が実行する可能性のあるアプリケーションである。
【００４３】
アプリケーション属性管理部４５２は、アプリケーション蓄積部４５１に蓄積されるアプリケーションプログラムに対してアプリケーション番号を付与する番号付けを行う。つまり、アプリケーション番号情報は、受信装置４内においてアプリケーション蓄積部４５１にアプリケーションプログラムが蓄積されているアプリケーションに対して一意の番号である。さらに、アプリケーション属性管理部４５２は、アプリケーション蓄積部４５１にアプリケーションプログラムが蓄積されたときにアプリケーションの属性を判定する。
例えば、アプリケーション属性管理部４５２は、アプリケーションプログラムの電子署名の有無を検証することにより属性を判定する。アプリケーション属性管理部４５２は、付与したアプリケーション番号を示すアプリケーション番号情報と、判定した属性を示す属性情報とを対応づけてアプリケーション属性格納部４５３に書き込む。
【００４４】
ＡＰＩ管理制御部４１１は、ＡＰＩ管理部４６１、ＡＰＩ制御リスト格納部４６３及びＡＰＩ制御部４６４を備える。
ＡＰＩ管理部４６１は、受信装置４の各機能部（モジュール）が提供するＡＰＩを記述したリストデータを管理する。
【００４５】
ＡＰＩ制御リスト管理部４６２は、受信装置４の機能部（モジュール）が提供するＡＰＩと、アクセス可能なアプリケーションの属性との対応づけを示すＡＰＩ制御リストデータを管理する。ＡＰＩ制御リスト管理部４６２は、放送事業者（編成チャンネル）ごとのＡＰＩ制御リストデータを記憶するＡＰＩ制御リスト格納部４６３を備える。ＡＰＩ制御リスト管理部４６２は、アプリケーションがＡＰＩにアクセスしてよいか否かの照会のため、ＡＰＩ制御部４６４から編成チャンネル、アプリケーションの属性情報及びＡＰＩ識別情報の通知を受ける。ＡＰＩ制御リスト管理部４６２は、ＡＰＩ制御リスト格納部４６３内のＡＰＩ制御リストデータのうち、編成チャンネルに対応したＡＰＩ制御リストデータを参照してアクセスの許可または禁止を判定すると、その判定結果を示す応答をＡＰＩ制御部４６４に返送する。また、ＡＰＩ制御リスト格納部４６３は、放送または通信で伝送されたＡＰＩ制御リストデータにより、ＡＰＩ制御リスト格納部４６３に記憶されているＡＰＩ制御リストデータを随時更新する。
【００４６】
ＡＰＩ制御部４６４は、アプリケーションからの受信装置４のモジュールが提供するＡＰＩへのアクセス制御を行う。ＡＰＩ制御部４６４は、アプリケーション制御部４０９から通知された起動対象のアプリケーションのアプリケーション番号情報と属性情報とを対応づけて記憶する属性記憶部４６５を備える。ＡＰＩ制御部４６４は、実行中のアプリケーションがＡＰＩにアクセスしようとするとき、アプリケーション実行部４１０から実行中のアプリケーションのアプリケーション番号情報と、アクセス対象であるＡＰＩのＡＰＩ識別情報との通知を受ける。ＡＰＩ制御部４６４は、分離部４０４が放送信号から分離したＰＳＩ／ＳＩ中のＳＤＴ（Service Description Table：サービス記述テーブル）を参照し、現在受信中の編成チャンネルの情報を取得する。また、ＡＰＩ制御部４６４は、アプリケーション実行部４１０から通知されたアプリケーション番号情報に対応して属性記憶部４６５から属性情報を読み出す。ＡＰＩ制御部４６４は、読み出した属性情報と、アプリケーション実行部４１０から通知されたＡＰＩ識別情報と、取得した編成チャンネルの情報とをＡＰＩ制御リスト管理部４６２に出力し、アプリケーションがＡＰＩへアクセスしてよいか否かを照会する。ＡＰＩ制御部４６４は、ＡＰＩ制御リスト管理部４６２から返送されたアクセスの許可または禁止の判定結果を受信すると、受信した判定結果をアプリケーション実行部４１０に通知する。
【００４７】
図３に示すアプリケーション制御機構４００での情報の入出力は、以下の通りである。
アプリケーション蓄積部４５１は、アプリケーションプログラムの情報Ｄ１１を、アプリケーション実行部４１０に出力する。アプリケーション実行部４１０は、アプリケーション番号、実行命令の情報Ｄ１２を、アプリケーション蓄積部４５１に出力する。
【００４８】
アプリケーション属性管理部４５２は、属性の情報Ｄ１３を、アプリケーション制御部４０９に出力する。アプリケーション制御部４０９は、アプリケーション番号の情報Ｄ１４を、アプリケーション属性管理部４５２に出力する。
アプリケーション制御部４０９は、アプリケーション番号、実行命令の情報Ｄ１５を、アプリケーション実行部４１０に出力する。アプリケーション制御部４０９は、アプリケーション番号、属性の情報Ｄ１６を、ＡＰＩ制御部４６４に出力する。
ＡＰＩ管理部４６１は、ＡＰＩ名の情報Ｄ１７を、ＡＰＩ制御リスト管理部４６２に出力する。ＡＰＩ制御リスト管理部４６２には、更新されたＡＰＩ制御リストの情報Ｄ１８が入力される。
【００４９】
ＡＰＩ制御部４６４は、ＡＰＩ名、属性、編成チャンネル情報の情報Ｄ１９を、ＡＰＩ制御リスト管理部４６２に出力する。ＡＰＩ制御リスト管理部４６２は、ＡＰＩへのアクセスの許可又は禁止を示す情報Ｄ２０を、ＡＰＩ制御部４６４に出力する。ＡＰＩ制御部４６４には、編成チャンネル情報が入力される。
ＡＰＩ管理制御部４６１には、ＡＰＩ名の情報Ｄ２２が入力される。ＡＰＩ制御部４６４は、アプリケーション番号、ＡＰＩアクセスの許可又は禁止を示す情報Ｄ２３を、アプリケーション実行部４１０に出力する。
【００５０】
ＡＰＩ制御部４６４は、アプリケーション番号、ＡＰＩ名の情報Ｄ２４を、アプリケーション実行部４１０に出力する。アプリケーション制御部４０９には、アプリケーション制御命令の情報Ｄ２５が入力される。
なお、図３中の丸印は、ＡＰＩを示している。アプリケーション実行部４１０は、このＡＰＩにアクセスする。
【００５１】
図４は、ＡＰＩ管理部４６１が管理するＡＰＩリストデータの例を示す図である。図４に示すように、ＡＰＩリストデータは、モジュールを特定する情報と、各モジュールが提供するＡＰＩのＡＰＩ名を示すＡＰＩ識別情報と、ＡＰＩの機能の説明を示す機能情報とを対応づけたデータである。図４においては、モジュールを特定する情報として、各機能部の名称を用いている。図４に示すＡＰＩリストデータは、例えば、選局部４０３は、選局しているメディア名を取得する機能のメディア情報取得、選局しているチャンネル名を取得する機能のチャンネル情報取得、メディアを選局する機能のメディア選局制御、チャンネルを選局する機能のチャンネル選局制御などのＡＰＩを提供することを示している。
【００５２】
図５は、ＡＰＩ制御リスト格納部４６３に記憶されるＡＰＩ制御リストデータを示す図である。ＡＰＩ制御リスト格納部４６３は、編成チャンネル情報と対応づけてＡＰＩ制御リストデータを記憶する。図５に示すように、ＡＰＩ制御リストデータは、モジュールを特定する情報と、各モジュールが提供するＡＰＩのＡＰＩ名を示すＡＰＩ識別情報と、ＡＰＩへのアクセスを許可するか禁止するかを属性毎に示すアクセス許可情報とを対応づけたデータである。
【００５３】
図５において、記号Ａは、アクセスが許可されていることを示し、記号Ｂは、アクセスが禁止されていることを示す。
図５に示すＡＰＩ制御リストデータは、例えば、選局部４０３が提供するメディア情報取得ＡＰＩについては、属性１のアプリケーション、属性２のアプリケーションともアクセスを許可し、分離部４０４が提供する映像取得ＡＰＩについては、属性１のアプリケーションからのアクセスは許可するが、属性２のアプリケーションからのアクセスは禁止することを示している。
【００５４】
図６は、受信装置４におけるアプリケーション属性管理処理を示すフローチャートである。アプリケーション属性管理処理において、受信装置４は、アプリケーションへのアプリケーション番号の付与と、付与したアプリケーション番号及び属性の紐づけを行う。
【００５５】
まず、受信装置４のユーザ入力部４０１によりアプリケーション取得命令が入力される。あるいは、受信装置４の分離部４０４が、放送受信部４０２が受信した放送信号からアプリケーション取得命令を分離する。アプリケーション取得命令には、アプリケーションが格納場所を示すロケーション情報が含まれている。ロケーション情報は、例えば、ＵＲＬ（Universal Resource Locator）により示される。アプリケーション管理部４０８は、ユーザ入力部４０１または分離部４０４からアプリケーション取得命令の入力を受けると、アプリケーション取得命令に設定されているロケーション情報で特定されるアプリケーション配信装置２にアクセスし、アプリケーションプログラムの取得要求を送信する。アプリケーション配信装置２は、受信装置４にアプリケーションプログラムを配信する。受信装置４の通信入出力部４０５は、アプリケーション配信装置２から受信したアプリケーションプログラムをアプリケーション管理部４０８に出力し、アプリケーション管理部４０８のアプリケーション蓄積部４５１は、アプリケーションプログラムを蓄積する（ステップＳ１０５）。
【００５６】
アプリケーション蓄積部４５１は、アプリケーションプログラムが蓄積されたことをアプリケーション属性管理部４５２に通知する（ステップＳ１１０）。
アプリケーション属性管理部４５２は、ステップＳ１１０においてアプリケーション蓄積部４５１にアプリケーションプログラムが蓄積されたアプリケーションに対して番号付けを行い、受信装置４内で一意のアプリケーション番号を付与する（ステップＳ１１５）。
アプリケーション属性管理部４５２は、付与したアプリケーション番号を示すアプリケーション番号情報をアプリケーション蓄積部４５１に出力する。アプリケーション蓄積部４５１は、アプリケーション属性管理部４５２から通知されたアプリケーション番号情報を、ステップＳ１１０において蓄積したアプリケーションプログラムに対応づけて記憶する。
【００５７】
続いて、アプリケーション属性管理部４５２は、アプリケーションの属性を判定する（ステップＳ１２０）。
具体的には、アプリケーション属性管理部４５２は、ステップＳ１０５においてアプリケーション蓄積部４５１に蓄積されたアプリケーションプログラムの属性を判定する。アプリケーション属性管理部４５２は、蓄積されたアプリケーションプログラムに付加されている電子署名を検証し、電子署名の検証が成功した場合は属性１、電子署名の検証が不成功であるか電子署名が付加されていない場合は属性２と判定する。
例えば、アプリケーション属性管理部４５２は、事業者Ａから配布されたアプリケーションプログラムには電子署名が付与されており、検証が成功したため、属性１と判定する。
また、アプリケーション属性管理部４５２は、その他の事業者Ｂ、事業者Ｃから配布されたアプリケーションプログラムには電子署名が付与されていないため、属性２と判定する。
【００５８】
アプリケーション属性管理部４５２は、ステップＳ１２０において判定した属性を示す属性情報と、ステップＳ１１５において番号付けしたアプリケーション番号を示すアプリケーション番号情報とを対応づけてアプリケーション属性格納部４５３に書き込む(ステップＳ１２５）。
これにより、アプリケーション番号と属性とが紐づけられる。
【００５９】
図７は、受信装置４におけるＡＰＩアクセス制御処理を示すフローチャートである。ＡＰＩアクセス制御処理では、受信装置４において実行されているアプリケーションがＡＰＩへアクセスしようとした際、アプリケーション制御機構４００が、アクセス対象のＡＰＩへのアクセスを許可するか否かを制御する。
【００６０】
まず、ユーザ操作や放送信号の命令により、アプリケーション制御部４０９にアプリケーション起動指示（アプリケーション制御命令）が入力される（ステップＳ２０５）。
例えば、ユーザ入力部４０１は、ユーザ操作により起動対象のアプリケーションを示す情報の入力を受ける。ユーザ入力部４０１は、入力された情報が示す起動対象のアプリケーションのアプリケーション番号情報をアプリケーション起動指示に設定し、アプリケーション制御部４０９に出力する。アプリケーション制御部４０９は、アプリケーション起動指示から起動対象のアプリケーション番号情報を読み出す。
あるいは、分離部４０４は、放送信号から分離した起動対象のアプリケーションのアプリケーションＩＤをアプリケーション制御部４０９に出力する。アプリケーション制御部４０９は、アプリケーションＩＤにより特定されるアプリケーションプログラムに対応して記憶されている起動対象のアプリケーションのアプリケーション番号情報をアプリケーション属性格納部４５３から読み出す。
【００６１】
アプリケーション制御部４０９は、アプリケーション管理部４０８のアプリケーション属性管理部４５２に、ステップＳ２０５において読み出した起動対象のアプリケーションのアプリケーション番号情報を通知する（ステップＳ２１０）。
アプリケーション属性管理部４５２は、ステップＳ２１０において通知されたアプリケーション番号情報に対応してアプリケーション属性格納部４５３に記憶されている属性情報を読み出し、アプリケーション制御部４０９に通知する（ステップＳ２１５）。
アプリケーション制御部４０９は、ステップＳ２１０において通知したアプリケーション番号情報と、通知したアプリケーション番号情報に対応してステップＳ２１５においてアプリケーション属性管理部４５２から通知された属性情報とを対応づけて、ＡＰＩ管理制御部４１１内のＡＰＩ制御部４６４に通知する（ステップＳ２２０）。
【００６２】
アプリケーション制御部４０９は、起動対象のアプリケーションのアプリケーション番号情報を設定した実行命令をアプリケーション実行部４１０に通知する（ステップＳ２２５）。
アプリケーション実行部４１０は、ステップＳ２２５において通知された実行命令から取得したアプリケーション番号情報により特定されるアプリケーションプログラムを、アプリケーション管理部４０８内のアプリケーション蓄積部４５１から読み出して実行する（ステップＳ２３０）。
【００６３】
アプリケーション実行部４１０は、実行中のアプリケーションプログラムの実行が終了した場合（ステップＳ２３５：はい）、処理を終了する。
一方、アプリケーション実行部４１０は、アプリケーションプログラムの実行が継続している場合（ステップＳ２３５：いいえ）、実行しているアプリケーションがＡＰＩを使用するかを判定する（ステップＳ２４０）。
具体的には、アプリケーション実行部４１０は、実行中のアプリケーションプログラムに記述されたＡＰＩ呼び出し命令（ＡＰＩアクセス命令）を読み出して実行する際、実行しているアプリケーションがＡＰＩを使用すると判定する。
【００６４】
アプリケーション実行部４１０は、実行しているアプリケーションがＡＰＩを使用しない（ＡＰＩにアクセスしない）と判定した場合（ステップＳ２４０：いいえ）、ステップＳ２３５からの処理を繰り返す。
一方、ステップＳ２４０において、実行しているアプリケーションがＡＰＩを使用する（ＡＰＩにアクセスする）と判定した場合（ステップＳ２４０：はい）、アプリケーション実行部４１０は、使用するＡＰＩのＡＰＩ名を示すＡＰＩ識別情報と、実行しているアプリケーションのアプリケーション番号情報とをＡＰＩ管理制御部４１１内のＡＰＩ制御部４６４に通知する（ステップＳ２４５）。
【００６５】
ＡＰＩ管理制御部４１１内のＡＰＩ制御部４６４は、ステップＳ２４５において通知されたアプリケーション番号情報に対応した属性情報を属性記憶部４６５から読み出す。さらに、ＡＰＩ制御部４６４は、分離部４０４が分離したＰＳＩ／ＳＩのＳＤＴから現在選択されている編成チャンネルを示す編成チャンネル情報を取得する（ステップＳ２５０）。
ＡＰＩ制御部４６４は、ステップＳ２４５において通知されたＡＰＩ識別情報と、ステップＳ２５０において読み出した属性情報及び取得した編成チャンネル情報をＡＰＩ管理制御部４１１内のＡＰＩ制御リスト管理部４６２に通知する（ステップＳ２５５）。
【００６６】
ＡＰＩ制御リスト管理部４６２は、編成チャンネル情報が示す編成チャンネルに対応してＡＰＩ制御リスト格納部４６３に記憶されているＡＰＩ制御リストデータを特定し、特定したＡＰＩ制御リストデータから、ステップＳ２５５において通知されたＡＰＩ識別情報に対応したアクセス許可情報を読み出す。ＡＰＩ制御リスト管理部４６２は、読み出したアクセス許可情報から、ステップＳ２５５において通知された属性情報が示す属性のアプリケーションからのアクセスを許可するか禁止するかを示す情報を読み出し、判定結果とする。ＡＰＩ制御リスト管理部４６２は、判定結果を示す応答をＡＰＩ管理制御部４１１内のＡＰＩ制御部４６４に通知する（ステップＳ２６０）。
ＡＰＩ制御部４６４は、ステップＳ２６０において通知された応答が示す判定結果をアプリケーション実行部４１０に通知する（ステップＳ２６５）。
【００６７】
アプリケーション実行部４１０は、ステップＳ２６５において通知された判定結果が「アクセス許可」を示していると判定した場合（ステップＳ２７０：はい）、ステップＳ２４５においてアプリケーション番号情報を通知したアプリケーションからのＡＰＩへのアクセスを許可する（ステップＳ２７５）。
これにより、実行中のアプリケーションは、ＡＰＩにアクセスし、受信装置４内のモジュールの機能を利用する。つまり、アプリケーション実行部４１０は、アプリケーションプログラムに記述されているＡＰＩ呼び出し命令を実行してＡＰＩを呼び出し、呼び出されたＡＰＩを提供する機能部（モジュール）は、その呼び出されたＡＰＩに対応した機能を実行する。受信装置４は、ステップＳ２３５からの処理を繰り返す。
【００６８】
一方、アプリケーション実行部４１０は、ステップＳ２６５において通知された判定結果が「アクセス禁止」を示していると判定した場合（ステップＳ２７０：いいえ）、ステップＳ２４５において通知したアプリケーション番号情報により特定されるアプリケーションからのＡＰＩへのアクセスを禁止する（ステップＳ２８０）。
これにより、実行中のアプリケーションは、受信装置４内のモジュールの機能の利用が制限される。受信装置４は、ステップＳ２３５からの処理を繰り返す。
【００６９】
上記のように、ＡＰＩ管理制御部４１１は、アプリケーション実行部４１０がアプリケーションプログラムを実行することによってＡＰＩを介してモジュールの機能を呼び出した際、機能の呼び出しに用いたＡＰＩの利用を許可する否かを、実行されているアプリケーションプログラムの属性情報に基づいて判定する。ＡＰＩ管理制御部４１１は、判定した結果に従ってアプリケーション実行部４１０がＡＰＩを介して行ったモジュールの機能の呼び出しを許可又は禁止するよう制御する。
【００７０】
電子署名が付加されたアプリケーションは、第三者機関が公式であると認定した公式アプリケーションである。このような公式アプリケーションには、第三者機関によりアプリケーションＩＤが付与される。公式アプリケーションは、アプリケーションＩＤが付与されているため、受信装置４は容易にアプリケーションを識別することができる。
【００７１】
一方、第三者機関による認定を受けていないアプリケーションは、非公式アプリケーションであり、アプリケーションＩＤも電子署名も付与されない。しかし、ユーザの操作によってアプリケーションを選択し、起動するためには、公式アプリケーションか非公式アプリケーションかによらず、受信装置４内の全てのアプリケーションを識別する必要がある。そのため、公式アプリケーションか非公式アプリケーションかに関わらず、受信装置４内でアプリケーションプログラムを取得した全てのアプリケーションにアプリケーション番号を付与する。
【００７２】
本実施形態では、受信装置４は、アプリケーションプログラムの取得時にアプリケーション番号を付与し、付与したアプリケーション番号と、アプリケーションの属性とを紐づけたデータを記憶する。その上で、アプリケーションの起動時には、そのアプリケーションのアプリケーション番号と属性の組のデータをＡＰＩ制御部４６４に必ず通知する。ユーザや放送からの指示に基づいて、アプリケーション実行部４１０によりアプリケーションが実行され、ＡＰＩにアクセスしようとしたときには、アプリケーション実行部４１０からアプリケーション番号とＡＰＩ名を示すデータがＡＰＩ制御部４６４に通知される。そして、ＡＰＩ制御部４６４は、アプリケーション起動時にすでに通知されているアプリケーション番号と属性の組のデータを記憶する属性記憶部４６５から、通知されたアプリケーション番号に紐づけられた属性のデータを取得し、そのデータが示す属性をもとに制御を行うことで、アプリケーションの属性に応じたアクセス制御を行う。
【００７３】
なお、ＡＰＩ制御リストデータの更新は、以下のように行う。
放送送出装置１は、ＡＰＩ制御リストデータが含まれる制御リストファイルを設定した放送信号を送信する。制御リストファイルは、例えば、データカルーセル方式で伝送される。受信装置４の分離部４０４は、放送信号から制御リストファイルを分離し、ＡＰＩ制御リスト格納部４６３は、その分離された制御リストファイルからＡＰＩ制御リストデータを取得する。さらに、ＡＰＩ制御リスト格納部４６３は、分離部４０４が放送信号から分離したＰＳＩ／ＳＩ中のＳＤＴを参照し、現在受信中の編成チャンネルを示す編成チャンネル情報を取得する。
【００７４】
各ＡＰＩ制御リストデータには、放送事業者がＡＰＩ制御リストデータを発行した日時を示すタイムスタンプが付加されている。ＡＰＩ制御リスト管理部４６２は、制御リストファイルから取得したＡＰＩ制御リストデータのタイムスタンプと、取得した編成チャンネル情報と対応づけてＡＰＩ制御リスト格納部４６３が記憶しているＡＰＩ制御リストデータのタイムスタンプとを比較する。ＡＰＩ制御リスト管理部４６２は、放送により受信したＡＰＩ制御リストデータのタイムスタンプの方が新しければ、編成チャンネル情報と対応づけてＡＰＩ制御リスト格納部４６３に記憶されているＡＰＩ制御リストデータを、放送により受信したＡＰＩ制御リストデータに書き換える。
【００７５】
あるいは、通信ネットワーク９に接続される図示しないサーバコンピュータが、編成チャンネル情報とＡＰＩ制御リストデータとが設定された制御リストファイルをＨＴＴＰなどにより配信する。受信装置４の通信入出力部４０５は、受信した制御リストファイルをＡＰＩ制御リスト管理部４６２に出力する。ＡＰＩ制御リスト管理部４６２は、通信により受信した制御リストファイルから編成チャンネル情報とＡＰＩ制御リストデータを読み出すと、放送で制御リストファイルを受信した場合と同様にタイムスタンプを比較する。
通信により受信したＡＰＩ制御リストデータのタイムスタンプの方が新しければ、ＡＰＩ制御リスト管理部４６２は、編成チャンネル情報と対応づけてＡＰＩ制御リスト格納部４６３に記憶されているＡＰＩ制御リストデータを、通信により受信したＡＰＩ制御リストデータに書き換える。
【００７６】
上記実施形態において、アプリケーション属性管理部４５２は、アプリケーション蓄積部４５１にアプリケーションプログラムが蓄積されたときにアプリケーションの属性を判定しているが、アプリケーションの起動時にアプリケーションの属性を判定してもよい。
【００７７】
例えば、図７のステップＳ２１５において、アプリケーション属性管理部４５２は、ステップＳ２１０において通知されたアプリケーション番号情報に対応したアプリケーションプログラムをアプリケーション蓄積部４５１から読み出し、図６のステップＳ１２０と同様の処理により属性を判定する。アプリケーション属性管理部４５２は、判定した属性を示す属性情報をアプリケーション制御部４０９に通知する。このとき、アプリケーション属性管理部４５２は、属性情報とアプリケーション番号情報とを対応づけてアプリケーション属性格納部４５３に書き込んでもよい。属性情報とアプリケーション番号情報とを対応づけてアプリケーション属性格納部４５３に属性情報を書き込む場合、アプリケーション属性管理部４５２は、ステップＳ２１０において通知されたアプリケーション番号情報に対応した属性情報がアプリケーション属性格納部４５３に書き込まれていないときのみ、アプリケーション番号情報に対応したアプリケーションプログラムをアプリケーション蓄積部４５１から読み出して属性を判定してもよい。
【００７８】
また、上記実施形態においては、電子署名の検証が成功した場合に属性１、電子署名の検証が不成功であるか電子署名が付加されていない場合に属性２としたが、属性の種類は３以上であってもよく、属性情報が他の属性を示すものでもよい。
例えば、アプリケーションの属性は、サービス事業者名やアプリケーションの種別を用いることができる。また、最も小さい単位ではアプリケーションＩＤを属性として用いることができる。あるいは、サービス事業者名、アプリケーションの種別、アプリケーションＩＤに対応して属性を決定してもよい。また、アプリケーション属性管理部４５２は、アプリケーションプログラムを放送で取得した場合には属性１、通信で取得した場合には属性２などのように、アプリケーションプログラムの取得経路によって属性を判定してもよい。
【００７９】
サービス事業者名を属性として用いる場合、アプリケーション属性管理部４５２は、アプリケーションプログラムに付与された電子署名が示すサービス事業者名を属性とし、アプリケーションプログラムに電子署名が付与されていない場合、ＡＰＩ利用可能範囲が最も狭い所定の属性とする。
【００８０】
あるいは、サービス事業者名から属性を決定する場合、予めアプリケーション属性格納部４５３にサービス事業者名と属性とを対応づけた属性判定情報を記憶しておく。アプリケーション属性管理部４５２は、アプリケーションプログラムに付与された電子署名が示すサービス事業者名に対応した属性を属性判定情報から読み出す。アプリケーションプログラムに電子署名が付与されていない場合、あるいは、電子署名が示すサービス事業者名に対応した属性がアプリケーション属性格納部４５３に記憶されていない場合、アプリケーション属性管理部４５２は、ＡＰＩ利用可能範囲が最も狭い所定の属性と判定する。
【００８１】
また、アプリケーション属性管理部４５２は、上述したサービス事業者名に代えてアプリケーションの種別、アプリケーションＩＤを用いて同様に属性を判定することができる。ただし、アプリケーション属性管理部４５２は、アプリケーションの種別、アプリケーションＩＤをアプリケーションプログラムに付加された情報から取得する。
【００８２】
なお、サービス事業者名、アプリケーションの種別あるいはアプリケーションＩＤと属性とを対応づけた属性判定情報は、放送送出装置１から放送信号により、あるいは、アプリケーション配信装置２から通信ネットワーク９を経由した通信により受信装置４に伝送してもよい。アプリケーション管理部４０８は、アプリケーション属性格納部４５３に記憶されている属性判定情報を、受信した属性判定情報により更新する。
また、アプリケーションは、通信ネットワーク９を経由して取得したコンテンツデータを表示するものでなくともよい。
【００８３】
本実施形態では、放送通信連携サービスに対応した受信装置４において、アプリケーションが受信装置内のモジュールが提供するＡＰＩや、受信装置４内で処理する情報（放送信号や蓄積データなど）を扱うＡＰＩを利用しようとしたときに、そのアプリケーションの属性に基づいて、ＡＰＩを利用するためのＡＰＩアクセスを許可または禁止する制御を行う。これにより、アプリケーションプログラムを提供する事業者や、アプリケーションプログラムそのものの信頼性（受信装置４のユーザが不利益を被らない可能性）に応じて属性を割り当て、その信頼度に応じてＡＰＩの利用の許可または禁止をきめ細かく決めることができる。よって、ユーザのアプリケーション利用における安全性の向上が見込まれる。
【００８４】
また、受信中の放送の編成チャンネルに基づいて、アプリケーションの属性ごとにＡＰＩの利用を許可または禁止する制御を行うことができる。これにより、放送通信連携サービスにおいて主体となる放送サービスを提供する放送事業者ごとに、アプリケーションからのＡＰＩ利用可能範囲の考え方の違いをサービスに反映することができる。さらに、アプリケーションの属性ごとのＡＰＩ利用の許可または禁止の制御に必要なＡＰＩ制御リストデータを更新することができるため、アプリケーションからのＡＰＩ利用可能範囲（ＡＰＩ利用の許可または禁止）に対する放送事業者の考え方が変わった場合においても、随時対応することができる。
【００８５】
このように、アプリケーションの属性や放送事業者といったエンティティごとに、受信装置４（受信機）で実行するアプリケーションのＡＰＩ利用の許可または禁止を柔軟に制御することができる。よって、数多くのＡＰＩを開示して多様なアプリケーションが制作される環境においても、ユーザやコンテンツに対するセキュリティ脅威というリスクを軽減できるという効果がある。
【００８６】
上述した放送送出装置１、アプリケーション配信装置２、コンテンツ配信装置３及び受信装置４は、内部にコンピュータシステムを有している。そして、放送送出装置１、アプリケーション配信装置２、コンテンツ配信装置３及び受信装置４の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、ＣＰＵ及び各種メモリやＯＳ、周辺機器等のハードウェアを含む。
【００８７】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含む。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶部のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含む。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【産業上の利用可能性】
【００８８】
本発明は、利用を許可するＡＰＩをアプリケーションに応じて制限する受信装置、プログラム及び受信方法などに適用することができる。
【符号の説明】
【００８９】
１…放送送出装置
２…アプリケーション配信装置
３…コンテンツ配信装置
４…受信装置
９…通信ネットワーク
４００…アプリケーション制御機構
４０１…ユーザ入力部
４０２…放送受信部
４０３…選局部
４０４…分離部
４０５…通信入出力部
４０６…ＢＭＬブラウザ部
４０７…ＨＴＭＬブラウザ部
４０８…アプリケーション管理部
４０９…アプリケーション制御部
４１０…アプリケーション実行部
４１１…ＡＰＩ管理制御部
４１２…表示制御部
４１３…映像表示部
４１４…音声制御部
４１５…音声出力部
４１６…データ蓄積部
４５１…アプリケーション蓄積部
４５２…アプリケーション属性管理部
４５３…アプリケーション属性格納部
４６１…ＡＰＩ管理部
４６２…ＡＰＩ制御リスト管理部
４６３…ＡＰＩ制御リスト格納部
４６４…ＡＰＩ制御部
４６５…属性記憶部
【図１】
2012157698.tif 000003
【図２】
2012157698.tif 000004
【図３】
2012157698.tif 000005
【図４】
2012157698.tif 000006
【図５】
2012157698.tif 000007
【図６】
2012157698.tif 000008
【図７】
2012157698.tif 000009
【国際調査報告】
2012157698.tif 000010
2012157698.tif 000011