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