JP2005316960A - 処理端末、受信端末及び受信データ処理システム - Google Patents

処理端末、受信端末及び受信データ処理システム Download PDF

Info

Publication number
JP2005316960A
JP2005316960A JP2005077254A JP2005077254A JP2005316960A JP 2005316960 A JP2005316960 A JP 2005316960A JP 2005077254 A JP2005077254 A JP 2005077254A JP 2005077254 A JP2005077254 A JP 2005077254A JP 2005316960 A JP2005316960 A JP 2005316960A
Authority
JP
Japan
Prior art keywords
processing
time
real
data
processed
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.)
Granted
Application number
JP2005077254A
Other languages
English (en)
Other versions
JP4504236B2 (ja
Inventor
Takushi Hiramoto
琢士 平本
Satoshi Niwano
智 庭野
Katsumi Tokuda
克己 徳田
Hironori Murakami
弘規 村上
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2005077254A priority Critical patent/JP4504236B2/ja
Publication of JP2005316960A publication Critical patent/JP2005316960A/ja
Application granted granted Critical
Publication of JP4504236B2 publication Critical patent/JP4504236B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】 ICカードのようなシングルタスクデバイスにおいて、リアルタイム性が要求される処理と、時間のかかる処理を並行して行うことは難しい。
【解決手段】 ICカード300は、処理を複数の処理ブロックに分割し、各処理ブロックを処理するために要する時間を保持する。受信機200はICカード300に対し処理を行わせる際、ICカードが非リアルタイム処理データの処理に費やしうる時間を通知する。ICカードは、通知された時間内に処理できる処理ブロックを処理する。処理後、受信機へ一旦応答を返したのち、新たな要求を受信可能な状態へと遷移する。これにより、ICカード300ではECMなどのリアルタイム処理データの処理が可能になる。受信機は、中断された処理を継続したい場合、継続する旨をICカード300へ通知することで非リアルタイム処理データの処理を継続させることができる。
【選択図】 図3

Description

本発明はデジタルコンテンツ再生装置に関し、ICカード等のシングルタスクデバイスにおいて、複数の処理を切り替えて処理する方法に関する。
近年、音楽、映像、ゲームなどのデジタルコンテンツ(以下、コンテンツと記述)を、インターネットなどの通信や、デジタル放送、CATV(Cable Television)などを通じて、サーバから受信機に配信し、受信機においてコンテンツを利用することが可能なコンテンツ配信サービスが実用化されつつある。
現在放送経由でコンテンツを配信するサービスとして、BS(Broadcast Satellite)/CS(Communication Satellite)を利用した有料放送サービスが既に実用化されている。これらは日本におけるデジタル放送の規格化団体であるARIB(Association of Radio Industries and Businesses)によって規格化された限定受信システム(以後CASと記述:Conditional Access System)を利用している。CASについては非特許文献1が詳しい(非特許文献1参照)。
現在利用されているCASでは、放送事業者はコンテンツを暗号化して配信する。受信機は前記暗号化コンテンツを受信すると、受信機に挿入されたICカードからコンテンツを復号するための鍵を取得し、コンテンツを復号し視聴する。本CASでは、定期的に暗号化する鍵を変更する時変鍵が用いられている。従って、受信機は鍵が更新されるタイミングで、ICカードから復号鍵を取得する必要がある。
ところで、近年、ICカードの耐タンパ性の向上と記憶容量の増大等により、認証や電子マネーといったセキュリティが要求されるサービスにおいてICカードが利用されるようになってきた。また、前記のARIBにて予め配信されたコンテンツを一旦受信機に蓄積し、ユーザが好きなときに好きなコンテンツを視聴するという、ユーザ利便性の高い利用形態であるサーバ型放送について検討されている。
これら各種のサービスを利用するために、サービス個別のICカードを受信機に都度挿入し、利用することはユーザにとって利便性が低い。従って、各種サービスを1枚のICカードで複数のサービスを処理する方法として、Java(登録商標)カードのようなマルチアプリケーションカードが提案されている。このマルチアプリケーションカードを利用すれば、受信機に挿入するICカードは1枚でよく、各種サービスが享受できるため、ユーザの利便性が高いと言える。
「デジタル方法におけるアクセス制御方式 4.1版」、社団法人 電波産業会、2003年
ところで現在一般に流通しているICカードは、シングルタスクデバイスとして動作する。つまりICカードは、挿入された受信機からの処理要求を受けた際、処理を開始し、処理が完了すると受信機へ応答を返し処理を終了するデバイスである。このようなシングルタスクデバイスでは、デバイスが処理を行っている最中、受信機はその他の処理をデバイスにて行わせることができない。
例えばコンテンツ配信システムにおいて、セキュリティに関する処理をICカードに行わせる場合を考える。一般にセキュリティに関わる処理は、暗号処理や著作権情報の解釈等、負荷が高い処理が必要となる。従って、このような処理をICカードで行うと処理が完了するまで長い時間がかかり、受信機はその間ICカードへの新たな処理要求を送ることはできない場合が想定される。
ところで、現在使用されているCASでは、コンテンツの暗号化に時変鍵を利用している。従って、前記のような時間のかかる処理をICカードにて行っている場合、復号鍵が更新されたタイミングでICカードから復号鍵を取得することが出来ず、コンテンツが復号できなくなるという問題があった。つまり、リアルタイム性が重要となる処理と、処理に時間がかかる処理を切り替えてICカードに行わせる場合、リアルタイム性が必要な処理が行えない場合がある点が問題となる。
本発明は、このような点を省みてなされたものであり、ICカード等のシングルタスクデバイスにおいてリアルタイム性が要求される処理と、時間のかかる処理とを切り替えて処理可能にすることを目的としている。
上記目的を達成するために、本発明の処理端末は、受信端末と処理端末とからなり、所定のタイミングでリアルタイムに処理されるべきリアルタイム処理データを受信してリアルタイムに処理し、処理のリアルタイム性を要求されない非リアルタイム処理データを前記リアルタイム処理の合間に処理する受信データ処理システムにおける処理端末であって、前記受信端末から、前記リアルタイム処理データおよび前記非リアルタイム処理データを受信する通信手段と、前記リアルタイム処理データの受信間隔に基づいて、前記非リアルタイム処理データの処理に費やし得る時間内に、処理可能なだけの前記非リアルタイム処理データを処理する処理手段とを備え、前記通信手段は、前記時間内に処理された処理結果を前記受信端末に返信することを特徴とする。
また、本発明の受信端末は、受信端末と処理端末とからなり、所定のタイミングでリアルタイムに処理されるべきリアルタイム処理データを受信してリアルタイムに処理し、処理のリアルタイム性を要求されない非リアルタイム処理データを前記リアルタイム処理の合間に処理する受信データ処理システムにおける受信端末であって、外部装置から、前記リアルタイム処理データおよび前記非リアルタイム処理データを受信する受信手段と、前記リアルタイム処理データの受信間隔に基づいて、前記非リアルタイム処理データの処理に費やし得る時間を算出する非リアルタイム処理時間算出手段と、算出された前記時間を示す時間情報を生成する時間情報生成手段と、前記リアルタイム処理データ、前記非リアルタイム処理データ及び生成された前記時間情報を前記処理端末に送信する送信手段とを備えることを特徴とする。
本発明によれば、1枚のICカードにて複数のCASや、通信回線網を利用した各種サービスを利用することが可能となり、受信機のコスト削減が可能となり、ユーザ利便性が向上する。
なお、本発明は、このような受信端末又は処理端末として実現することができるだけでなく、このような受信端末又は処理端末が備える特徴的な手段を機能としてコンピュータに実現させるためのプログラムとして実現したり、このような受信端末又は処理端末が備える特徴的な手段をステップとする受信データ処理方法として実現したり、このような端末装置が備える特徴的な手段に用いられるデータを含む媒体として実現したりすることもできる。そして、そのようなプログラムは、CD−ROM等の記録媒体やインターネット等の伝送媒体を介して配信することができるのは言うまでもない。
以下、本発明の実施の形態について、図面を参照しながら説明する。
図1は、本発明の実施の形態におけるコンテンツ配信システムの全体構成を示すブロック図である。ここで開示するコンテンツ配信システムは、受信機が、デジタル放送を介して暗号化されたコンテンツを受信しつつ、内部に蓄積されたコンテンツを再生したり、通信網を介して受信したコンテンツを再生したりするシステムであって、サーバ100、受信機200及びICカード300を備える。サーバ100は、暗号化コンテンツを配信する。受信機200は、サーバ100から配信されたコンテンツを受信し、ICカード300から取得したスクランブル鍵を使用して暗号化コンテンツを復号し視聴する。コンテンツと共に配信されるスクランブル鍵を取得し受信機200へセットする。例えば、本実施の形態の受信機200とICカード300とは、受信機200に蓄積されているコンテンツをライセンス情報の利用条件に従って再生し、その再生中に、デジタル放送を介して配信される暗号化コンテンツを録画するような受信システムを構成する。
図2は、本発明の実施の形態における受信機200の内部構成を示すブロック図である。
受信機200は、デジタル放送及び通信回線網を介して、暗号化コンテンツ及びICカード300で処理されるべきデータなどを受信する受信機であって、受信部201、分離部202、復号部203、伸張処理部204、制御部205、中断処理DB206、通信部207、通信データ処理部208、メッセージ処理部209、処理時間管理部210及び中断情報管理部211を備える。受信部201は、放送及び通信等を介して、配信された暗号化コンテンツを受信する。分離部202は、受信部201にて受信したMPEG2−TS等の映像・音声等が多重化された伝送ストリームを分離する。復号部203は、暗号化されたコンテンツ等を復号する。伸張処理部204は、MPEG2等により圧縮された映像・音声を伸張処理する。制御部205は、受信機の各機能部を制御する。中断処理DB206は、ICカード300との処理において中断している処理を記憶する。通信部207は、ICカード300と通信を行う。通信データ処理部208は、ICカードとの通信プロトコルであるISO7816−4準拠の通信データを処理する。メッセージ処理部209は、ICカード300と送受信するメッセージを処理する。処理時間管理部210は、ICカード300が処理可能な時間を管理する。中断情報管理部211は、中断情報DB206にて記憶する中断情報識別子テーブルを管理する。
図3は、本発明の実施の形態におけるICカード300の内部構成を示すブロック図である。
ICカード300は、受信機200で受信されたデータのうち、セキュアに処理される必要のあるデータを処理するセキュアな端末装置であって、通信部301、通信データ処理部302、制御部303、処理時間管理部304、処理情報DB305、要求処理部306、メッセージ処理部307、中断情報管理部308および中断情報DB309を備える。ここで、セキュアに実行される必要のある処理とは、例えば、受信機200で受信されたライセンス情報からコンテンツの暗号を復号するためのコンテンツ鍵を抽出したり利用条件を抽出したり、デジタル放送の多重化データからスクランブル鍵を復号したりする処理などのことである。また、セキュアに処理される必要のあるデータとは、コンテンツ鍵や利用条件を含んだライセンス情報、暗号化されたワーク鍵を含んだEMM(Entitlement Management Message)及び暗号化されたスクランブル鍵を含んだECM(Entitlement Control Message)などである。通信部301は、受信機200と通信を行う。通信データ処理部302は、ICカードの通信プロトコルであるISO7816−4準拠の通信データを処理する。制御部303は、ICカード300の各機能部を制御する。処理時間管理部304は、ICカード300にてリアルタイムに実行される必要がない非リアルタイム処理を実行可能な時間を管理する。処理情報DB305は、ICカード300が各種処理に要する時間情報を記憶する。要求処理部306は、受信機200からの要求を処理する。メッセージ処理部307は、受信機200と送受信するメッセージを処理する。中断情報管理部308は、処理途中の中断状態を記憶/復元する。中断情報DB309は、各種中断処理の内部状態を中断情報として記憶する。
次に本発明の実施の形態における、受信機200とICカード300の通信方法に使用するメッセージ、および通信データの構造について説明する。
図4を参照して受信機200およびICカード300間で送受信されるメッセージの構造について説明する。図4(a)は、受信機200からICカード300に処理を要求するための要求メッセージのデータ構造の一例を示す図である。図4(b)は、図4(a)に示した要求メッセージに対して、ICカード300から受信機200に応答する応答メッセージのデータ構造の一例を示す図である。
受信機200からICカード300へ送信される要求メッセージ400は、メッセージID401、メッセージサイズ402及びパラメータ403から構成される。メッセージID401の項目には、要求メッセージの種別を示すメッセージIDが格納されている。メッセージサイズ402の項目には、パラメータ403の項目のサイズを示すデータが格納されている。パラメータ403の項目には、要求する処理に必要となる各種パラメータが格納されている。
またICカード300から受信機200へ送信される応答メッセージ410は、メッセージID411、メッセージサイズ412及び結果情報413から構成される。メッセージID411の項目には、応答メッセージの種別を示すメッセージIDが格納されている。メッセージサイズ412の項目には、結果情報413のサイズを示すデータが格納されている。結果情報413の項目には、ICカード300が処理した結果が格納される。
次に受信機200とICカード300が通信する際に使用する通信データの構造について、図5を参照して説明する。図5(a)は、受信機200からICカード300へ送信する要求コマンドAPDU(Application Protocol Data Unit)500のデータ構造を示す図である。
受信機200からICカード300へ送信する要求コマンドAPDU500は、CLA501と、INS502と、P1(503)と、P2(504)と、Lc505と、Data領域506と、Le507とから構成される。CLA501は、送信するコマンドがISO7816−4規定のデータ構造にどれだけ準拠しているかを示す。INS502は、コマンドの種別を示す。P1(503)は、コマンドに対するパラメータを格納する。Lc505は、Data領域506のサイズを格納する。Data領域506は、要求処理に必要となる各種データを格納する。Le507は、送信するコマンドに対する応答として期待する応答コマンドのサイズを格納する。
CLA501〜Le507は、ISO7816−4のコマンドAPDUとして規定されているデータ構造である。本実施の形態におけるコマンドAPDU500のData領域506は、さらに、処理可能時間508と、処理フラグ509と、処理情報510とから構成される。処理可能時間508には、ICカード300が非リアルタイム処理を実行できる時間を格納する。処理フラグ509には、コマンドAPDU500が新規処理の開始指示を表しているのか、中断処理の継続指示を表しているのかを指定するフラグが格納されている。処理情報510の項目は、ICカード300が処理を行う為に必要となる情報を格納する。処理情報510には、処理フラグ509によって新規処理の開始指示が指定された場合には処理の要求メッセージ400が格納され、中断処理の継続指示が指定された場合には継続する処理の中断情報識別子が格納される。
図5(b)は、ICカード300から受信機200へ送信する応答コマンドAPDU520のデータ構造を示す図である。次に、ICカード300から受信機200へ送信するレスポンスAPDU520は、Data領域521と、SW1/SW2(522)とから構成される。Data領域521は、ICカード300が処理した結果である各種情報を格納する。SW1/SW2(522)は、ICカード300の処理ステータスを格納する。
Data領域521およびSW1/SW2(522)は、ISO7816−4のレスポンスAPDUとして規定されているデータ構造である。本実施の形態におけるレスポンスAPDU520のData領域521は、さらに、処理状態フラグ523と、データサイズ524と、処理応答525とから構成される。処理状態フラグ523は、ICカード300における処理状況を「処理完了/処理中断」として通知する。データサイズ524には、処理応答525のサイズが格納される。処理応答525には、ICカード300による処理結果が格納される。ここで処理応答525は、処理状態フラグ523に処理完了が格納される場合には処理に対する応答メッセージ410が格納され、処理中断が格納される場合には中断処理を識別する為の中断処理識別子が格納される。
次にICカード300が、時間を元に処理を分割するために必要となる処理の時間情報について、図6を参照して説明する。図6は、非リアルタイム処理を複数の処理ブロックに分割した場合、各処理ブロックの処理に要する時間を記録したテーブルの一例を示す図である。
処理時間情報600は、ICカード300にて行われる処理に要する時間を管理するテーブルの一例である。ICカード300は、前記非リアルタイム処理を行う為に必要となる各種処理ブロックと、その処理に必要となる時間を処理時間情報600として管理する。具体的には、処理ブロック1(601)の処理にかかる時間はxx1ms(602)、例えば、80msであり、処理ブロック2(603)の処理にかかる時間はxx2ms(604)、例えば、40ms、・・・、処理ブロックN605の処理に要する時間はxxNms(606)といった各処理ブロックに対する時間情報を管理する。
ICカード300は、処理時間情報600を参照することで、処理しようとしている処理ブロックが想定時間内に終了するか否かを判定することが可能となる。例えば100msだけ処理を行いたい場合、処理ブロック1は例えば、80msなので処理可能であり、処理ブロック2は例えば、40msなので引き続いて処理ブロック2を処理することはできないことが判定できる。ICカード300は、この時間管理情報600を処理情報DB305にて保持する。
次に受信機200およびICカード300が、ICカード300にて中断している処理を管理する為に必要となる中断情報の管理方法について説明する。
図7は、受信機200が中断処理DB206に保持する中断情報識別子テーブルの一例を示す図である。まず、図7を参照して、受信機200が保持する中断情報について説明する。
受信機200は、ICカード300が処理を中断した場合、当該中断処理に対してICカード300が発行した中断情報識別子を中断情報識別子テーブル700にて保持する。具体的には、中断識別子テーブル700は、中断処理に対してICカード300が発行する中断識別子701〜703と、中断しているそれぞれの処理の種別を識別する処理種別704〜706とから構成される。受信機200は、この中断識別子テーブル700を中断処理DB206にて保持する。
図8は、ICカード300が中断情報DB309に保持する中断情報テーブルの一例を示す図である。次に図8を参照して、ICカード300が保持する中断情報について説明する。
ICカード300は、非リアルタイム処理を中断した場合の内部状態と中断情報識別子とを関連付けて中断情報テーブル800として保持する。中断情報テーブル800は、中断情報識別子804〜807と、それぞれの中断情報識別子に対応する中断情報808〜811から構成される。中断情報808〜811は、例えば中断している処理の種別を示す処理種別801と、次に処理するブロックの番号を示す処理ブロックカウンタ802と、その他内部で保持するパラメータである各種パラメータ803とから構成される。ICカード300において非リアルタイム処理がどこで中断されているか、すなわち、どの処理ブロックまで処理が完了されたかは、処理ブロックカウンタ802のカウント値で示される。ICカード300は、この中断情報テーブル800を中断情報DB309にて保持する。
以上の構成要素から、ICカード300においてリアルタイム処理と非リアルタイム処理とを切り替えて処理する方法について説明する。ここでは詳しくは後述するが、定期的にICカード300にて行われる必要があるリアルタイム処理の例としてCASにおける復号鍵の取得処理について説明する。以後、この処理を、CASのリアルタイム処理と呼ぶこととする。
図9は、CASにおいて、サーバから配信される暗号化コンテンツを受信機で復号する場合のデータの流れを示す図である。まずCASのリアルタイム処理について、図9を参照して説明する。なお、ここでの説明はCASのリアルタイム処理の概要にとどめ、受信機200およびICカード300の詳細な動作については言及しない。
サーバ100とICカード300とは予め共通の秘密であるマスター鍵904(以後、Kmと記述)を保持しているとする。まずコンテンツを暗号化して配信する前に、サーバ100は暗号化部906にてワーク鍵903(以後、Kwと記述)が格納されたEMMをKm904にて暗号化し、多重化部907にてMPEG2−TS等の伝送ストリームに多重化して配信する。
受信機200は、分離部908にて受信した伝送ストリームから暗号化EMMを分離し、ICカード300へ送信する。ICカード300は復号部909にて保持するKm904にてEMMを復号しKw903を取得し保持する。
次にサーバ100は、コンテンツを暗号化する鍵であるスクランブル鍵902(以後、Ksと記述)をECMに格納し、暗号化部905にてKw903で暗号化する。サーバ100はKs902を定期的に(例えば、2秒ごとに)更新するため、更新の度に上記の処理を行う。次にECMを暗号化した後、前記ECMに格納しているKs902を用いてコンテンツを暗号化部901にて暗号化する。その後、暗号化部905にて暗号化した暗号化ECMと暗号化部901にて暗号化した暗号化コンテンツを多重化部907にて多重化し、配信する。
受信機200は伝送ストリームを受信すると、分離部908にて暗号化ECMおよび暗号化コンテンツに分離し、暗号化ECMをICカード300へ送信する。ICカード300は、暗号化ECMを復号部910にて前記取得したKw903にて復号し、暗号化ECMに格納してあるKs902を受信機200へ返信する。受信機200は、ICカード300から取得したKs902を利用し復号部911にて暗号化コンテンツを復号する。以上の処理は、Ks902が定期的に更新される度に行われる。従って、ICカード300が何かしらの処理を行っており前記のKs902の取得処理が行えない場合、受信機200はコンテンツを復号することができなくなる。
図10(a)および図10(b)は、ICカード300においてリアルタイム処理の合間に非リアルタイム処理を行なう場合のICカード300の概略的動作を示す図である。図10(a)では受信機200とICカード300との間のリアルタイム処理データのやり取りは細い線の矢印で示し、非リアルタイム処理データのやり取りは太い線の矢印で示している。図10(a)に示すように、ICカード300にはリアルタイム処理データを処理するプログラムAと、非リアルタイム処理データを処理するプログラムBとがインストールされている。既に図9を用いて説明したように、サーバ100はKs902を定期的に(例えば、2秒ごとに)更新するため、受信機200は2秒ごとに暗号化されたECMを受信する。受信機200は、受信した暗号化ECMをICカード300に送信し、暗号化ECMをKwで復号し、スクランブル鍵Ksを返信するよう要求する要求コマンドを送信する。一般に、プログラムAのリアルタイム処理に要する最大処理時間は、受信機200がICカード300に要求コマンドを送信する時間と、ICカード300が要求コマンドへの応答としてKsを受信機200へ返信する時間とを含めて1秒以内と定められている。従って、この場合、プログラムBが非リアルタイム処理データを処理するために費やすことができる時間は、次のECMが受信されるまでの約1秒間ということになる。なお、このプログラムAのリアルタイム処理に要する時間が1秒以内に定められていない場合には、このリアルタイム処理に要する時間は、受信機200にあらかじめ記憶されており、受信機200が非リアルタイム処理に使うことができる時間を算出して、ICカード300に通知するものとする。図10(a)に太線の矢印で示すように、プログラムBは、受信機200から要求された非リアルタイム処理データの処理を、その1秒以内または受信機200から通知された時間内に実行完了することができない場合は、途中で処理を中断し、プログラムAに制御を渡し、プログラムAに次のリアルタイム処理を実行させる。このとき、プログラムBは、中断した時点の内部状態を記憶しておき、プログラムAのリアルタイム処理が終了すると、中断した時点の状態に内部状態を復元し、続きの非リアルタイム処理を継続する。例えば、図10(b)に示すように、非リアルタイム処理データが処理1〜処理4までの4個の処理ブロックに分割できた場合、プログラムBは、1秒間に処理3までの処理を実行できる。処理3までを実行した段階で、プログラムBは、次の処理4を実行することができないことを判断し、非リアルタイム処理を中断する。このとき、プログラムBは、処理3までの処理を完了していることを記憶しておき、プログラムAによるリアルタイム処理が終了すると、処理3の処理が完了した時点の内部状態を復元し、処理4から実行を開始する。
図11は、暗号化ECMと暗号化コンテンツとが多重化された伝送ストリームのデータ構造を概略的に示す図である。次に暗号化ECMと暗号化コンテンツとが多重化された伝送ストリームの構造について図11を参照して説明する。
多重化され受信機200へ伝送される伝送ストリーム1000は、暗号化ECMと、前記暗号化ECMに格納されたKs902にて暗号化されたコンテンツの一部とから構成される。Ks902は定期的に変化する時変鍵である為、伝送ストリーム1000はKs902に依存したコンテンツブロックから構成される。具体的には、コンテンツブロックは例えばKs902としてKs1が格納されている暗号化ECM1001と、Ks1により暗号化したコンテンツの一部である暗号化コンテンツブロック1002とから構成される。つまり、受信機200はKs902の取得に失敗した場合、鍵の更新間隔1003であるXmsの時間だけコンテンツを正しく復号できないこととなる。
図12は、伝送ストリーム中の暗号化コンテンツと、Ksの更新のためのECM処理とのタイミングの関係を示す図である。図12の左側にスクランブル鍵(even)、スクランブル鍵(odd)、スクランブル鍵(even)、・・・と書かれたブロックは、それぞれ伝送ストリーム中の暗号化コンテンツを示し、スクランブル鍵(even)、スクランブル鍵(odd)、スクランブル鍵(even)で暗号化されていることを示している。また、同図のICカード300から受信機200への応答をみると、一回のECM処理で、スクランブル鍵(even)と(odd)とが復号されることがわかる。すなわち、1つの暗号化ECMには2つのKsが含まれており、一回のECM処理によって、スクランブル鍵(even)で暗号化されたコンテンツ約2秒間と、スクランブル鍵(odd)で暗号化されたコンテンツ約2秒間との合計約4秒間、コンテンツを再生することができる。しかし、次の暗号化ECMで送られてくるスクランブル鍵(odd)と(even)とを受信できなかったり、復号できなかったりした場合、4秒後の鍵の切り替えでスクランブル鍵が(even)に更新されたとき、新たなECMを受信して復号するまで、以後の暗号化コンテンツを再生することができなくなってしまう。なお、スクランブル鍵の切り替えはTS(transport stream)パケットのtransport_scrambling_controlのビットで制御されている。従って、受信機200は、スクランブル鍵の切り替えが行なわれる時刻を知っている必要はなく、TSパケットのこのビットを検出するごとにECM処理の要求コマンドをICカード300に送信し、ICカード300から応答としてKsを受信した直後に非リアルタイム処理の要求コマンドを送信するようにしてもよい。他にも、ECMが更新されたことを検出し、更新されたECMをICカード300へ送信し、応答を受信したことを検出して、非リアルタイム処理の要求コマンドを送信するようにしてもよい。
前記の問題を回避するためには、鍵の更新処理時にICカード300において何も処理を行っていなければよい。従って、リアルタイムに行う必要のある処理の合間に、その他の非リアルタイムでよい処理を行えばよいこことなる。
図13は、ICカード300が非リアルタイム処理に費やせる時間を算出するために参照するリアルタイム処理時間テーブルの一例を示す図である。以下、図13を参照して、ICカード300が非リアルタイムの処理に費やせる時間の算出方法について説明する。
まず、受信機200がリアルタイムの処理に必要となる時間の管理方法について説明する。リアルタイム処理時間テーブル1100は、リアルタイム処理の種別を識別する処理識別1101、1102と、それぞれのリアルタイム処理に必要となる処理時間1103、1104とから構成される。例えば、CASでリアルタイムに行う必要のあるECM処理を行うための時間は、Y1msである。受信機200は、このリアルタイム処理時間テーブル1100を処理時間管理部210にて管理する。
次に非リアルタイムの処理をICカード300にて行うことができる時間の算出方法について説明する。受信機200において、リアルタイム処理中にICカード300にて非リアルタイム処理に費やせる処理可能時間は、「(Ks902の鍵更新期間)−(リアルタイム処理にかかる時間)」から算出される。
従って、非リアルタイム処理に費やせる処理可能時間内にICカード300で非リアルタイム処理を終了すれば、リアルタイム処理を問題なく行うことが可能となる。よって、リアルタイム処理の合間に、ICカード300にて行う処理を、処理可能時間内に終了する仕組みが必要となる。この仕組みを実現する為の、受信機200およびICカード300のそれぞれの動作について説明する。
図14は、受信機200における要求待ち状態から要求コマンドをICカード300に送信するまでの処理手順を示すフローチャートである。図15は、受信機200がICカード300に要求コマンドを送信してから、応答コマンドに対応する処理を完了するまでの処理手順を示すフローチャートである。まず図14、及び図15を参照して受信機200の動作について説明する。
まず、予め受信機200は起動し、ST1201にて要求待ち状態となっているとする。
次に受信機はタイマーやユーザ動作等の何かしらのイベントを受け取った後、ST1202にて制御部205は、ICカード300に対する処理が必要であるか否かを判定する。ここでICカード300での処理が不必要である場合にはST1203へ進み、ICカード300での処理が必要である場合にはST1204へ進む。
まずICカード300での処理が必要な場合について説明する。ST1204において、制御部205は、処理する対象がリアルタイム処理であるか否かを判定する。ここではCASのリアルタイム処理であるECM処理を例に説明するため、ここで制御部205は、分離部202からECMの処理要求を受信したか否かを判定する。判定した結果が、ECM処理でない場合にはST1205へ進み、ECM処理である場合には分離部202から渡されたECMを取得しST1207へ進む。
ECM処理でない場合、ST1205にて要求処理中にリアルタイム処理をICカード300にて切り替え処理する必要があるか否かを判定する。制御部205は、これを、現在CASを用いてコンテンツを視聴しているか否か、または現在CASを用いてコンテンツを裏録画しているか否かに基づいて判定する。なお、裏録画とは、コンテンツを視聴中に、バックグラウンドで受信した他のコンテンツを録画することを言う。CASのコンテンツを視聴中でも裏録画中でもない場合、受信機200はECM処理をICカード300にて行う必要がないため、ICカード300にて切り替え処理は不要と判定しST1207へ進む。CASのコンテンツを視聴中又は裏録画中である場合、ECM処理をICカード300にて行う必要があるため、ST1206へ進む。
ST1206では、受信機200は、ICカード300が非リアルタイム処理に費やせる時間を算出する。この算出方法については前述したが、制御部205は処理時間管理部210からリアルタイム処理時間テーブル1100を取得する。次にECM処理1101に必要となる時間(Y1ms)1103を取得する。次に制御部205は、Ks902の更新間隔1003であるXmsから前記Y1msを引くことにより、当該処理に費やせる処理可能な時間を算出する。本実施の形態においてこのKs902の更新間隔(Xms)は、非特許文献1で定義された「ECMの更新の最小時間間隔」値を使用することとするが、特に設定方法は限定しない。
次にST1204にてECM処理であると判定した場合における処理について説明する。
ECM処理はリアルタイムに中断せず処理する必要があるため、制御部205は、ICカード300における処理可能な時間を設定しない。従ってここではST1207にて、処理可能な時間を「処理可能時間を設定しない」を意味する値である「0」とする。
次にST1208にて、要求処理に対する要求メッセージ400を作成する。制御部205は、メッセージ処理部209への要求に必要となる各種パラメータをセットし、対応する要求メッセージ400を作成させる。
ST1209にて制御部205は、ICカード300へ送信するコマンドAPDU500を作成する。制御部205は、ST1208にて生成した要求メッセージ400と、ST1206もしくはST1207にて算出した処理可能な時間と、新規処理を指定した処理フラグとをセットする。通信データ処理部208は、セットされた処理可能な時間をData領域506の処理可能時間508に、セットされた処理フラグを処理フラグ509に、セットされた要求メッセージ400を処理情報510に格納し、コマンドADPU500を生成する。なお、ここでは、ICカード300へ当該処理がリアルタイム処理であり、処理を分割する必要がない旨を「処理可能時間=0」にて通知しているが、別にフラグ等にて通知してもよく、特に本発明を限定するものではない。
次にST1203にて中断処理があった場合の処理について説明する。制御部205は、中断情報管理部211に対し、中断処理があるか否かを問い合わせる。中断情報管理部211は、中断処理DB206から中断情報識別子テーブル700を取得し、中断処理が記述してあるかチェックする。中断処理がない場合、ST1201へ進む。中断処理がある場合、中断情報識別子および処理種別を取得し、制御部205へ戻す。次に中断情報管理部211は、前記制御部205へ戻した中断情報識別子および処理種別を、中断情報識別子テーブル700から削除し、中断情報識別子テーブル700を中断情報DB206へ再度記録する。
ST1210にて、ST1205と同様に、非リアルタイム処理の継続処理の最中にリアルタイム処理をICカード300にて切り替え処理する必要があるか否か判定する。制御部205は、現在CASを用いてコンテンツを視聴も裏録画もしていない場合、ECM処理をICカード300にて行う必要がないため、ICカード300にて切り替え処理は不要と判定し、ST1212へ進む。CASでコンテンツを視聴中または裏録画中である場合、ECM処理をICカード300にて行う必要があるためST1211へ進む。
ST1211での処理は、ST1206と同様でICカード300が、非リアルタイム処理に費やせる時間を算出する。算出方法はST1206と同様であるため、ここでは省略する。
ST1212での処理も、ST1207と同様であるため、ここでは省略する。
次にST1213にて、中断処理を再開するためのコマンドAPDU500を生成する。制御部205は、ST1211もしくはST1212にて算出した処理可能な時間と、ST1203にて取得した中断情報識別子と、処理継続を示す処理フラグとを通信データ処理部208へセットする。通信データ処理部208は、セットされた処理可能な時間をData領域506の処理可能時間508に、セットされた処理フラグを処理フラグ509に、セットされた中断情報識別子を処理情報510に格納し、コマンドADPU500を生成する。
ST1214にて、制御部205はST1209およびST1213にて生成したコマンドAPDU500を、通信部207を介してICカード300に対して送信する。
以下、図15のフローチャートを参照する。その後、ST1215にて制御部205は、ICカード300からの応答であるレスポンスAPDU520を待つ。ICカード300が処理を行い、レスポンスAPDU520を返信した場合、制御部205はST1216へ進む。
ST1216において受信機200は、ICカード300が非リアルタイム処理を完了したのか、途中の処理ブロックで中断したのかを判定する。制御部205は、通信部207を介して取得したレスポンスAPDU520を通信データ処理部208へセットする。次に制御部205は、通信データ処理部208から処理状態フラグ523を取得する。ここで制御部205は、処理状態フラグ523が処理完了であればST1217の処理を実行し、処理中断であればST1218の処理を実行する。
まず処理が完了した場合のST1217の処理について説明する。
制御部205は、通信データ処理部208から応答メッセージ410を取得し、メッセージ処理部209へセットする。制御部205は、メッセージ処理部209から、応答メッセージ410に格納された各種結果情報に基づいて、対応した処理を行う。例えばICカード300に対して要求した処理が、ECMからKs902を取得する処理であった場合、制御部205は取得したKs902を復号部203へセットし、コンテンツの復号を開始する。以上の処理ののち、制御部205は図14に示したST1201へ戻る。
次に処理が中断した場合のST1218の処理について説明する。
制御部205は、通信データ処理部208から中断情報識別子を取得する。次にST1219にて制御部205は、前記取得した中断情報識別子とそれに対応する処理を識別する処理種別を対応づけ、中断情報管理部211へセットする。中断情報管理部211は、中断情報DB206にて保持している中断識別子テーブル700に前記セットされた情報を関連付けて追記し、再度中断情報DB206へ記録する。記録完了後、制御部205はST1201へ戻る。
図16は、ICカード300が受信機200から要求コマンドを受信し、要求コマンドに対する処理を実行するまでの動作を示すフローチャートである。図17は、ICカード300が要求コマンドに対する処理の完了を判定してから応答コマンドを受信機200に送信するまでの動作を示すフローチャートである。次にICカード300の動作について、図16及び図17を参照して説明する。
ST1301にてICカード300は、受信機200が送信したコマンドAPDU500を受信した時点から処理を開始する。
まずST1301にて制御部303は、通信部301を介して受信したコマンドAPDU500を取得する。次に制御部303は、前記取得したコマンドAPDU500を通信データ処理部302へセットする。
次にST1302にて制御部303は、通信データ処理部302から受信機200が要求する処理種別を取得する。通信データ処理部302は、セットされたコマンドAPDU500のINS502を取得し、処理種別として制御部303へ戻す。制御部303は、前記取得した処理種別を処理時間管理部304へセットする。
次にST1303にて制御部303は、受信機200から要求された処理を行う際に、処理可能な時間が指定されているか通信データ処理部302へ確認する。通信データ処理部302は、処理可能時間508に値が格納されていた場合には処理可能な時間が設定されている旨を制御部303へ通知し、「0」が格納されていた場合には処理可能な時間が設定されていない旨を制御部303へ通知する。通知された結果に基づき、制御部303は処理可能時間が指定されている場合にはST1304へ、指定されていない場合にはST1306へ進む。
まず処理可能時間が指定されている場合について説明する。
ST1304にて制御部303は、処理可能時間が設定されていることから、処理を分割して行う必要がある旨を処理時間管理部304へ通知する。処理時間管理部304は、ST1302にてセットされた処理種別に対応した処理時間情報600を、処理情報DB305から取得する。
ST1305にて制御部303は、通信データ処理部302から処理可能時間508を取得し、処理時間管理部304へセットする。通信データ処理部302は、処理可能時間508を取得し、制御部303へ戻す。また、処理時間管理部304は、セットされた処理可能時間を内部で保持する。
次に処理可能時間が指定されていない場合について説明する。
ST1306にて制御部303は、処理可能時間は設定されていないことから、処理を分割して行う必要がなく、一括して処理できる旨を処理時間管理部304へ通知する。処理時間管理部304は、内部で保持する処理時間情報600を削除する。
ST1307にて制御部303は、受信機200から新たな処理の開始を要求されたのか、中断している処理の継続を要求されたのかを通信データ処理部302へ確認する。通信データ処理部302は、処理フラグ509で指定された処理が新規処理であるのか、継続処理であるのかを判断し、その結果を制御部303へ戻す。制御部303は、新たな処理の開始要求である場合にはST1308へ進み、継続処理の要求である場合にはST1309へ進む。
まず新たな処理の開始要求であった場合について説明する。
ST1308にて制御部303は、通信データ処理部302から要求メッセージ400を取得する。次に制御部303は、前記取得した要求メッセージ400を要求処理部306へセットし、処理開始を指示する。要求処理部306はセットされた要求メッセージ400をメッセージ処理部307にて解釈し、処理すべき内容や処理に必要となるパラメータ等を取得する。次に内部で保持する処理ブロックカウンタを「1」に設定したのちST1310へ進む。
次に中断処理の継続要求であった場合について説明する。
ST1309では前回中断した処理を継続するため、内部の状態を中断前に戻す処理を行う。まず制御部303は、通信データ処理部302から中断情報識別子を取得する。通信データ処理部302は、処理情報510に格納された値を中断情報識別子として制御部303へ戻す。次に制御部303は、取得した中断情報識別子を中断情報管理部308へセットし、対応する中断情報(処理種別801、処理ブロックカウンタ802及び各種パラメータ803などを含む)を取得する。具体的には、中断情報管理部308は、中断情報DB309から中断情報テーブル800を取得し、中断情報識別子に対応する中断情報を取得し、制御部303へ戻す。また、取得した中断情報およびそれに対応する中断情報識別子のエントリを中断情報テーブル800から削除し、その中断情報テーブル800を中断情報DB309へ記録する。制御部303は、取得した各種パラメータが格納された中断情報を用い、中断前の状態に内部状態を復元した後に要求処理部306に対し処理の継続を指示する。
以上の処理開始準備を行ったのち、要求処理部306は受信機200から指示された処理を開始する。
以下、図17のフローチャートを参照する。まず、ST1320にて要求処理部306は、処理時間管理部304が処理時間情報600を保持しているか否かを調べ、要求された処理が一括処理であるか否かを判定する。要求処理部306は要求された処理が一括処理と判定されればST1321に進み、一括処理でないと判定されればST1310に進む。まず、要求された処理が一括処理である場合について説明する。ST1321にて要求処理部306はさらに一括処理が完了したか否かを判定し、完了していない場合にはST1322にて一括処理を継続し、ST1321に戻る。一括処理が完了した場合、要求処理部306はST1316の処理に進む。
ST1320で要求された処理が一括処理でない場合、ST1310の処理に進む。ST1310にて要求処理部306は、処理が完了したか否かを判定する。処理が完了した場合にはST1316へ進む。処理が完了していない場合にはST1311へ進む。
まず、処理が完了していない場合について説明する。
ST1311にて要求処理部306は、内部で保持する処理ブロックカウンタの値を処理時間管理部304へセットし、対応する処理ブロックを処理可能であるのか確認する。処理時間管理部304は、保持する処理時間情報600から、対応する番号ブロックを処理する為に必要となる処理時間を取得する。次に処理時間管理部304は、内部で保持する処理可能時間と処理時間を比較する。ここで、「処理可能時間≧処理時間」である場合には要求処理部306へ処理可能である旨を通知し、「処理可能時間=処理可能時間−処理時間」を計算したのち、内部で保持する処理可能時間を更新する。対して、「処理可能時間<処理時間」である場合には処理継続不可を通知する。要求処理部306は、通知された結果が処理可能である場合にはST1312へ進み、処理継続不可である場合にはST1314へ進む。
まず処理可能であると通知された場合の動作について説明する。
ST1312にて要求処理部306は、処理ブロックカウンタで指定された処理ブロックを処理する。
次にST1313にて要求処理部306は、内部で保持する処理ブロックカウンタを1増加させ、終了判定もしくは次の処理ブロックを処理可能であるか確認するためST1310へ戻る。
次に処理継続不可と通知された場合の動作について説明する。
ST1314にて要求処理部306は、制御部303へ中断情報を記録するよう通知する。制御部303は前記通知に基づき、要求処理部306から内部状態を取得する。次に中断情報管理部308へ前記取得した内部状態をセットし、中断情報として格納するよう指示する。中断情報管理部308は、セットされた中断情報に中断情報識別子を割り振り、中断情報DB309にて保持している中断情報テーブル800へ追記する。以上の処理のあと、中断情報管理部308は生成した中断情報識別子を制御部303へ戻す。
ST1315にて制御部303は、処理中断であることを示す処理状態フラグと、ST1314にて取得した中断情報識別子を通信データ処理部302へセットし、レスポンスAPDU520の生成を指示する。通信データ処理部302は、セットされた処理状態フラグを処理状態フラグ523に、中断情報識別子を結果情報525に格納し、中断情報識別子のサイズをデータサイズ524へ格納する。次にSW1/SW2(522)へ正常終了を示すステータスコードを格納し、作成したレスポンスAPDU520を制御部303へ戻す。
次に処理が完了した場合の動作について説明する。
まずST1316にて要求処理部306は、処理結果をメッセージ処理部307にセットし、応答メッセージ410の作成を指示する。メッセージ処理部307は、ST1308にてセットされた要求メッセージ400に対する応答メッセージのメッセージIDをメッセージID411へ、セットされた結果情報のサイズをメッセージサイズ412へ、セットされた結果情報を結果情報413へ格納することで応答メッセージ410を作成する。要求処理部306は、メッセージ処理部307から応答メッセージ410を取得し、制御部303へ処理完了通知と共に送信する。
ST1317にて制御部303は、レスポンスAPDU520を生成する。
まずST1316にて受信した処理完了通知を処理状態フラグ、応答メッセージ410を処理応答として通信データ処理部302へセットし、レスポンスAPDU520を作成させ取得する。通信データ処理部302は、セットされた処理状態フラグを処理状態フラグ523へ、セットされた処理応答のサイズをデータサイズ524へ、セットされた処理応答を処理応答525へ格納し、SW1/SW2(522)へ正常終了を示すステータスコードを格納し、作成したレスポンスAPDU520を制御部303へ戻す。
制御部303は、ST1315およびST1317にて生成されたレスポンスAPDU520を、通信部301を介して受信機200へ送信する。
以上のように、受信機200はICカード300に要求する処理に、処理可能時間を設定することでリアルタイム処理および非リアルタイム処理を切り替えて行わせることが可能となる。
なお、本実施の形態ではICカード300を例に説明をしたが、これは特に本発明を限定するものではない。例えば、ICカード300は、受信機200に組み込まれるLSIやボードなどであってもよい。
なお、受信機200はICカード300へ処理を中断する条件として処理可能時間508を通知したが、その他の条件であってもよい。例えば、コマンドAPDU500に分割フラグにて「1処理ブロックを処理/一括処理」を指定し、ICカード300が処理可能時間の間に処理する範囲を制御してもよい。また、処理範囲の指定の方法も、常に1処理ブロックを一括処理するように指定してもよいし、処理可能時間内で処理可能な限りの処理ブロックの数を指定するようにしてもよい。
また、ICカード300は1つの処理ブロックの処理が終了する都度、処理可能時間内に次の処理を完了できるかを判定したが、この判定は、非リアルタイム処理の開始からタイマーなどにより各処理ブロックの処理の累積時間を測定しておき、処理可能時間から累積時間を減算した残り時間と、次の処理ブロックの処理に要する時間とを比較することによって判定してもよい。また、各処理ブロックの処理に要する時間を処理時間情報から読み出して加算し、処理可能時間と比較することによって、次の処理を処理可能時間内に完了することができるか否か判定するとしてもよい。
なお、ここではICカード300は処理するブロックを機能単位で分離したが、単位時間あたりで分割してもよい。
なお、ここでは次の処理ブロックを時間内に処理可能か否かの判定はST1311にてICカード300側で行っているが、受信機200側で行ってもよい。すなわち、ICカード300で保持している処理時間情報600を受信機200が取得し、処理する処理ブロックの範囲、すなわち、処理可能時間内に処理できる処理ブロックを直接指定してもよい。また前記処理時間情報600は、利用するICカード300から取得しても良いし、その他の装置、メディア等から取得しても良い。
なお、ICカード300が保持する処理時間情報600は更新できても良い。例えばICカード300上のアプリケーションの一部もしくは全部をインターネット経由で更新した場合、ICカード300における処理速度が変化する場合がある。この場合でも、処理時間情報600を更新することで対応することが可能となる。
なお、ICカード300はある処理に対する処理時間情報600を複数保持していてもよい。ICカード300は、供給される動作周波数により処理能力が変化する。従って、供給される周波数により参照する処理時間情報600を選択し、適切に動作させることが可能となる。
なお、中断処理の識別にICカード30がST1314にて生成した中断情報識別子を用いているが、受信機200において生成してもよい。この場合、受信機200は生成した中断情報識別子を、コマンドAPDU500にてICカード300へ通知すればよい。
なお、ICカード300は中断した処理毎に中断情報を保持できるとしたが、ICカード300において1つだけ保持できるとしてもよい。その場合、中断情報識別子により再開する中断処理を選択する仕組みは必要ない。また、処理する種別に対して1つだけ中断情報を保持する場合も同様に中断情報識別子を使用しなくてもよい。この場合、コマンドAPDU500のINS502および処理フラグ509にて継続する処理が一意に識別可能であるからである。
なお、ICカード300が中断情報を中断情報DB309に格納するとしたが、受信機200側で保持してもよい。この場合、ICカード300は処理を中断した際の応答で中断情報を中断情報識別子の代わりに返信する。受信機200は、前記返信された中断情報を、中断情報識別子テーブル700の中断情報識別子の代わりに管理し、継続処理を行わせる際には、コマンドAPDU500にて前記保持している中断情報をICカード300へ送信すればよい。
なお、受信機200は中断情報を管理し、ST1203にて中断している処理がある場合、必ず中断処理の再開を行っているが、処理をキャンセルしてもよい。この場合、コマンドAPDU500の処理フラグ509に「処理キャンセル」を意味する値を格納し、処理情報510にキャンセルする中断情報識別子を格納すればよい。また、ICカード300が中断情報を保持する場合も、同様に行うことで処理をキャンセルしてもよい。また、複数の処理を中断している場合には、処理の種別に応じて処理を再開する優先順位を設けるとしてもよい。
以上のように、本発明におけるICカード等のシングルタスクデバイスでの複数処理を切り替えて行う方法は、1枚のICカード等において複数のサービスを利用する場合に有用となる。
なお、上記実施の形態では、受信機200とICカード300とが蓄積型コンテンツなどを利用条件に従って再生している最中に、デジタル放送で配信されるコンテンツの裏録画をする場合などに、非リアルタイム処理を処理ブロックに分割して処理する例について説明したが、本発明はこれに限定されない。例えば、受信機200とICカード300とが蓄積型コンテンツを利用条件に従って再生している最中に、CASで配信されるコンテンツの録画予約が入っている場合も同様に、非リアルタイム処理の最中にECM処理が必要になる場合には、ICカード300は非リアルタイム処理を分割して処理する。図18は、CASの録画予約がある場合に、非リアルタイム処理を分割して行なうか否かを判定する基準の一例を示す図である。図18に示すように、制御部205は、ICカード300で非リアルタイム処理を行う場合、そのときから処理分割不要期間(例えば、非リアルタイム処理の一括処理に要する最大処理時間が経過するまで)の間に、録画予約が入っているか否かによって切り替え処理の必要性を判断する。具体的には、処理分割不要期間の間にCASの録画予約が入っていれば、制御部205は、非リアルタイム処理の分割を指示する。なお、制御部205は、前記処理分割不要期間を予め保持していてもよいし、ICカード300から取得してもよく、取得先については特に限定しない。
本発明にかかるICカードの処理方法により、複数の処理を切り替えて行うことが可能となり、コスト削減、ユーザ利便性の向上につながり、ICカードを利用したコンテンツ配信サービスにおける受信機として有用である。
本発明の受信機は、内部に蓄積されたコンテンツの再生または通信回線網を介して受信したコンテンツの再生と、デジタル放送の受信とを並行して行う受信データ処理システムの受信機として有用である。本発明のICカードは、内部に蓄積されたコンテンツの再生または通信回線網を介して受信したコンテンツの再生と、デジタル放送の受信とを並行して行う受信データ処理システムにおいて、認証処理および暗号鍵の取得処理を行なうICカードとして有用である。
本発明の実施の形態におけるコンテンツ配信システムの全体構成を示すブロック図である。 本発明の実施の形態における受信機の内部構成を示すブロック図である。 本発明の実施の形態におけるICカードの内部構成を示すブロック図である。 (a)は、受信機からICカードに処理を要求するための要求メッセージのデータ構造の一例を示す図である。(b)は、(a)に示した要求メッセージに対して、ICカードから受信機に応答する応答メッセージのデータ構造の一例を示す図である。 (a)は、受信機からICカードへ送信する要求コマンドAPDUのデータ構造を示す図である。(b)は、ICカードから受信機へ送信する応答コマンドAPDUのデータ構造を示す図である。 非リアルタイム処理を複数の処理ブロックに分割した場合、各処理ブロックの処理に要する時間を記録したテーブルの一例を示す図である。 受信機が中断処理DBに保持する中断情報識別子テーブルの一例を示す図である。 ICカードが中断情報DBに保持する中断情報テーブルの一例を示す図である。 CASにおいて、サーバから配信される暗号化コンテンツを受信機で復号する場合のデータの流れを示す図である。 (a)および(b)は、ICカードにおいてリアルタイム処理の合間に非リアルタイム処理を行なう場合のICカードの概略的動作を示す図である。 暗号化ECMと暗号化コンテンツとが多重化された伝送ストリームのデータ構造を概略的に示す図である。 伝送ストリーム中の暗号化コンテンツと、Ksの更新のためのECM処理とのタイミングの関係を示す図である。 ICカードが非リアルタイム処理に費やせる時間を算出するために参照するリアルタイム処理時間テーブルの一例を示す図である。 受信機における要求待ち状態から要求コマンドをICカードに送信するまでの処理手順を示すフローチャートである。 受信機がICカードに要求コマンドを送信してから、応答コマンドに対応する処理を完了するまでの処理手順を示すフローチャートである。 ICカードが受信機から要求コマンドを受信し、要求コマンドに対する処理を実行するまでの動作を示すフローチャートである。 ICカードが要求コマンドに対する処理の完了を判定してから応答コマンドを受信機に送信するまでの動作を示すフローチャートである。 CASの録画予約がある場合に、非リアルタイム処理を分割して行なうか否かを判定する基準の一例を示す図である。
符号の説明
100 サーバ
200 受信機
201 受信部
202 分離部
203 復号部
204 伸張処理部
205、303 制御部
206 中断処理DB
207、301 通信部
208、302 通信データ処理部
209、307 メッセージ処理部
210、304 処理時間管理部
211、308 中断情報管理部
300 ICカード
305 処理情報DB
306 要求処理部
309 中断情報DB

Claims (29)

  1. 受信端末と処理端末とからなり、所定のタイミングでリアルタイムに処理されるべきリアルタイム処理データを受信してリアルタイムに処理し、処理のリアルタイム性を要求されない非リアルタイム処理データを前記リアルタイム処理の合間に処理する受信データ処理システムにおける処理端末であって、
    前記受信端末から、前記リアルタイム処理データおよび前記非リアルタイム処理データを受信する通信手段と、
    前記リアルタイム処理データの受信間隔に基づいて、前記非リアルタイム処理データの処理に費やし得る時間内に、処理可能なだけの前記非リアルタイム処理データを処理する処理手段とを備え、
    前記通信手段は、前記時間内に処理された処理結果を前記受信端末に返信する
    ことを特徴とする処理端末。
  2. 前記通信手段は、さらに、前記受信端末から、前記非リアルタイム処理データの処理に費やし得る時間を示す時間情報を受信し、
    前記処理手段は、受信された前記時間情報で示される時間内に、処理可能なだけの前記非リアルタイム処理データを処理する
    ことを特徴とする請求項1記載の処理端末。
  3. 前記処理手段は、さらに、前記非リアルタイム処理データを複数の処理ブロックに分割する処理分割部を備え、
    前記処理手段は、前記時間情報で示される時間内に処理可能な数の前記処理ブロックの処理を行なう
    ことを特徴とする請求項2記載の処理端末。
  4. 前記処理手段は、分割された前記処理ブロックの処理に要した時間を通算して計測する処理時間計測部を備え、
    前記処理手段は、前記時間情報と、計測された通算処理時間との差分である残り時間内に、新たな処理ブロックを処理可能か否か判定し、前記時間情報で示される時間内に処理可能な数の前記処理ブロックの処理を行なう
    ことを特徴とする請求項3記載の処理端末。
  5. 前記処理分割部は、前記非リアルタイム処理の機能を単位として前記非リアルタイム処理データを分割し、
    前記処理手段は、さらに、前記各処理ブロックの処理に要する時間を示した処理時間テーブルをあらかじめ保持する処理時間テーブル保持部を備え、
    前記処理手段は、前記処理時間テーブルを参照して、前記時間情報で示される時間の間に処理可能な数の前記処理ブロックの処理を行う
    ことを特徴とする請求項3記載の処理端末。
  6. 前記処理分割部は、前記非リアルタイム処理データを一定の処理時間を単位として分割し、
    前記処理手段は、前記一定の処理時間に基づいて、前記時間情報で示される時間の間に処理可能な処理ブロックの数を算出し、算出された数の前記処理ブロックの処理を行う
    ことを特徴とする請求項3記載の処理端末。
  7. 前記通信手段は、さらに、前記受信端末から、非リアルタイム処理データを複数の処理ブロックに分割することを指示する分割フラグを受信し、
    前記処理分割部は、前記分割フラグが受信されると、前記非リアルタイム処理データを分割する
    ことを特徴とする請求項3記載の処理端末。
  8. 前記処理手段は、前記分割フラグが受信されると、前記時間情報で示される時間内に処理可能な数の前記処理ブロックの処理を行ない、前記分割フラグが受信されないと、前記非リアルタイム処理データを一括処理する
    ことを特徴とする請求項7記載の処理端末。
  9. 前記処理手段は、前記分割フラグが受信されると、分割された前記処理ブロックのうち1つだけ処理する
    ことを特徴とする請求項7記載の処理端末。
  10. 前記処理手段は、前記時間情報で示される時間内に処理可能な数だけ前記処理ブロックの処理を行ない、前記処理ブロックを含む前記非リアルタイム処理データの処理が完了されなかった場合には、前記非リアルタイム処理データの処理を中断し、リアルタイム処理データの処理を行なう
    ことを特徴とする請求項3記載の処理端末。
  11. 前記通信手段は、前記非リアルタイム処理データの処理が中断されたときには、前記受信端末に中断された旨を通知し、前記非リアルタイム処理データの処理が完了されたときには完了された旨を通知する
    ことを特徴とする請求項10記載の処理端末。
  12. 前記処理手段は、さらに、中断された前記非リアルタイム処理データの中断時点の処理状態を示した中断情報を生成し保持する中断状態保持部を備え、
    前記処理手段は、前記リアルタイム処理データの処理が完了した後、前記中断情報で示される中断時点の前記処理状態から、前記非リアルタイム処理データの処理を開始する
    ことを特徴とする請求項10記載の処理端末。
  13. 前記処理手段は、前記リアルタイム処理データの処理を処理ブロックに分割せず、一括処理で行なう
    ことを特徴とする請求項10記載の処理端末。
  14. 前記通信手段は、前記受信端末から、複数の処理ブロックに分割された非リアルタイム処理データを受信し、
    前記処理手段は、分割された前記処理ブロックの処理に要した時間を通算して計測する処理時間計測部を備え、
    前記処理手段は、前記時間情報と、計測された通算処理時間との差分である残り時間内に、新たな処理ブロックを処理可能か否か判定し、前記時間情報で示される時間内に処理可能な数の前記処理ブロックの処理を行なう
    ことを特徴とする請求項2記載の処理端末。
  15. 前記通信手段は、前記受信端末から、複数の処理ブロックに分割された非リアルタイム処理データと、前記各処理ブロックの処理に要する時間を示した処理時間テーブルとを受信し、
    前記処理手段は、受信された前記処理時間テーブルに基づいて、前記時間情報で示される時間の間に処理可能な数の前記処理ブロックの処理を行う
    ことを特徴とする請求項2記載の処理端末。
  16. 前記処理手段は、さらに、前記リアルタイム処理データの受信間隔に基づいて、前記非リアルタイム処理データの処理に費やし得る時間を算出する時間算出部を備え、
    前記処理手段は、算出された時間内に処理可能なだけの前記非リアルタイム処理データを処理する
    ことを特徴とする請求項1記載の処理端末。
  17. 前記処理手段は、さらに、前記非リアルタイム処理データを複数の処理ブロックに分割する処理分割部を備え、
    前記通信手段は、さらに、前記受信端末から、非リアルタイム処理データを複数の処理ブロックに分割することを指示する分割フラグを受信し、
    前記処理分割部は、前記分割フラグが受信されると、前記非リアルタイム処理データを複数の処理ブロックに分割し、
    前記処理手段は、前記リアルタイム処理データの受信間隔に基づいてあらかじめ定められた時間内に処理可能なだけの処理ブロックを処理する
    ことを特徴とする請求項1記載の処理端末。
  18. 受信端末と処理端末とからなり、所定のタイミングでリアルタイムに処理されるべきリアルタイム処理データを受信してリアルタイムに処理し、処理のリアルタイム性を要求されない非リアルタイム処理データを前記リアルタイム処理の合間に処理する受信データ処理システムにおける受信端末であって、
    外部装置から、前記リアルタイム処理データおよび前記非リアルタイム処理データを受信する受信手段と、
    前記リアルタイム処理データの受信間隔に基づいて、前記非リアルタイム処理データの処理に費やし得る時間を算出する非リアルタイム処理時間算出手段と、
    算出された前記時間を示す時間情報を生成する時間情報生成手段と、
    前記リアルタイム処理データ、前記非リアルタイム処理データ及び生成された前記時間情報を前記処理端末に送信する送信手段と
    を備えることを特徴とする受信端末。
  19. 前記受信端末は、さらに、算出された前記時間に基づき、前記処理端末において前記非リアルタイム処理データの処理中にリアルタイム処理データの処理が必要になるか否かに応じて、前記非リアルタイム処理データの分割の要否を判定する判定手段を備え、
    前記送信手段は、分割が必要になると判定されたときには、前記非リアルタイム処理データを複数の処理ブロックに分割して処理すべきことを示す分割指示を前記処理端末に送信する
    ことを特徴とする請求項18記載の受信端末。
  20. 前記受信端末は、さらに、利用者からの指示を受け付ける指示受け付け手段を備え、
    前記非リアルタイム処理データは、蓄積されている暗号化コンテンツを復号するためのコンテンツ鍵及び復号されたコンテンツを再生するための利用条件を含んだライセンスデータであって、
    前記リアルタイム処理データは、放送を介して受信した暗号化コンテンツを復号するためのスクランブル鍵を含んだECMであって、
    前記判定手段は、蓄積されている前記暗号化コンテンツを再生中に、放送を介した暗号化コンテンツの録画を指示する録画指示が受け付けられた場合、前記非リアルタイム処理データの分割が必要と判定する
    ことを特徴とする請求項19記載の受信端末。
  21. 前記判定手段は、蓄積されている前記暗号化コンテンツの前記ライセンスデータを用いた再生に関する非リアルタイム処理が終了するまでの間に、放送暗号化コンテンツの録画を開始する旨の録画予約指示が受け付けられている場合、前記非リアルタイム処理データの分割が必要と判定する
    ことを特徴とする請求項20記載の受信端末。
  22. 前記受信端末は、さらに、前記判定手段によって、前記非リアルタイム処理データの分割が必要と判定された場合、前記非リアルタイム処理データを複数の処理ブロックに分割する処理分割部を備え、
    前記送信手段は、分割された複数の前記処理ブロックからなる非リアルタイム処理データを前記処理端末に送信する
    ことを特徴とする請求項18記載の受信端末。
  23. 前記受信端末は、さらに、非リアルタイム処理データの種類に応じて、機能を単位として分割された各処理ブロックの処理に要する時間を示した処理時間テーブルをあらかじめ保持している処理時間テーブル保持手段を備え、
    前記送信手段は、複数の処理ブロックに分割された非リアルタイム処理データと、前記処理時間テーブルとを前記処理端末に送信する
    ことを特徴とする請求項22記載の受信端末。
  24. 前記受信端末は、さらに、
    前記処理端末に対して非リアルタイム処理データの処理を要求する要求コマンドを生成する要求コマンド生成手段と、
    前記処理端末から非リアルタイム処理データ及びリアルタイム処理データの処理結果を受信する処理結果受信手段とを備え、
    前記要求コマンド生成手段は、前記処理結果受信手段において前記処理端末から前記リアルタイム処理データの処理結果が受信されると、前記要求コマンドを生成し、
    前記送信手段は、生成された前記要求コマンドを前記処理端末に送信する
    ことを特徴とする請求項18記載の受信端末。
  25. 前記受信端末は、さらに、
    前記処理端末に対して非リアルタイム処理データの処理を要求する要求コマンドを生成する要求コマンド生成手段と、
    外部から受信したリアルタイム処理データの暗号鍵の更新を検出する鍵更新検出手段とを備え、
    前記要求コマンド生成手段は、前記暗号鍵の更新が検出されると、前記要求コマンドを生成し、
    前記送信手段は、生成された前記要求コマンドを前記処理端末に送信する
    ことを特徴とする請求項18記載の受信端末。
  26. 受信端末と処理端末とからなり、所定のタイミングでリアルタイムに処理されるべきリアルタイム処理データを受信してリアルタイムに処理し、処理のリアルタイム性を要求されない非リアルタイム処理データを前記リアルタイム処理の合間に処理する受信データ処理システムの処理端末における受信データ処理方法であって、
    受信端末から、前記リアルタイム処理データおよび前記非リアルタイム処理データを受信し、
    前記リアルタイム処理データの受信間隔に基づいて、前記非リアルタイム処理データの処理に費やし得る時間内に、処理可能なだけの前記非リアルタイム処理データを処理し、
    前記時間内に処理された処理結果を前記受信端末に返信する
    ことを特徴とする受信データ処理方法。
  27. 受信端末と処理端末とからなり、所定のタイミングでリアルタイムに処理されるべきリアルタイム処理データを受信してリアルタイムに処理し、処理のリアルタイム性を要求されない非リアルタイム処理データを前記リアルタイム処理の合間に処理する受信データ処理システムの受信端末における受信データ処理方法であって、
    外部装置から、前記リアルタイム処理データおよび前記非リアルタイム処理データを受信し、
    前記リアルタイム処理データの受信間隔に基づいて、前記非リアルタイム処理データの処理に費やし得る時間を算出し、
    算出された前記時間を示す時間情報を生成し、
    前記リアルタイム処理データ、前記非リアルタイム処理データ及び生成された前記時間情報を前記処理端末に送信する
    ことを特徴とする受信データ処理方法。
  28. 受信端末と処理端末とからなり、所定のタイミングでリアルタイムに処理されるべきリアルタイム処理データを受信してリアルタイムに処理し、処理のリアルタイム性を要求されない非リアルタイム処理データを前記リアルタイム処理の合間に処理する受信データ処理システムであって、
    前記受信端末は、
    リアルタイム処理データを受信するリアルタイム処理データ受信手段と、
    非リアルタイム処理データを受信する非リアルタイム処理データ受信手段と、
    前記リアルタイム処理データの受信間隔に基づいて、前記非リアルタイム処理データの処理に費やし得る時間を示す時間情報を生成する時間情報生成手段と、
    前記リアルタイム処理データ、前記非リアルタイム処理データおよび前記時間情報を前記処理端末に送信する第1通信手段とを備え、
    前記処理端末は、
    前記受信端末から、前記リアルタイム処理データ、前記非リアルタイム処理データおよび前記時間情報を受信する第2通信手段と、
    受信された前記時間情報で示される時間内に、処理可能なだけの前記非リアルタイム処理データを処理する処理手段とを備える
    ことを特徴とする受信データ処理システム。
  29. 受信端末と処理端末とからなり、所定のタイミングでリアルタイムに処理されるべきリアルタイム処理データを受信してリアルタイムに処理し、処理のリアルタイム性を要求されない非リアルタイム処理データを前記リアルタイム処理の合間に処理する受信データ処理システムであって、
    前記受信端末は、
    リアルタイム処理データと非リアルタイム処理データとを受信する受信手段と、
    受信された前記リアルタイム処理データおよび前記非リアルタイム処理データを前記処理端末に送信する送信手段とを備え、
    前記処理端末は、
    前記受信端末から、前記リアルタイム処理データおよび前記非リアルタイム処理データを受信する通信手段と、
    前記リアルタイム処理データの受信間隔に基づいて、前記非リアルタイム処理データの処理に費やし得る時間内に、処理可能なだけの前記非リアルタイム処理データを処理する処理手段とを備え、
    前記通信手段は、前記時間内に処理された処理結果を前記受信端末に返信する
    ことを特徴とする受信データ処理システム。
JP2005077254A 2004-03-29 2005-03-17 処理端末、受信端末及び受信データ処理システム Expired - Fee Related JP4504236B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005077254A JP4504236B2 (ja) 2004-03-29 2005-03-17 処理端末、受信端末及び受信データ処理システム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004095647 2004-03-29
JP2005077254A JP4504236B2 (ja) 2004-03-29 2005-03-17 処理端末、受信端末及び受信データ処理システム

Publications (2)

Publication Number Publication Date
JP2005316960A true JP2005316960A (ja) 2005-11-10
JP4504236B2 JP4504236B2 (ja) 2010-07-14

Family

ID=35444274

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005077254A Expired - Fee Related JP4504236B2 (ja) 2004-03-29 2005-03-17 処理端末、受信端末及び受信データ処理システム

Country Status (1)

Country Link
JP (1) JP4504236B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007305029A (ja) * 2006-05-15 2007-11-22 Matsushita Electric Ind Co Ltd リアルタイムosにおける処理時間配分方法
JP2008187641A (ja) * 2007-01-31 2008-08-14 Canon Inc 映像記録再生装置及びその制御方法
JP2012138015A (ja) * 2010-12-27 2012-07-19 Mizuho Information & Research Institute Inc タイムアウト監視システム及びタイムアウト監視プログラム

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0659915A (ja) * 1992-08-10 1994-03-04 Nippon Telegr & Teleph Corp <Ntt> トランザクションの実行順序制御方法および装置
JPH06295247A (ja) * 1993-04-08 1994-10-21 Mitsubishi Electric Corp リアルタイム処理実現方法
JPH08314740A (ja) * 1995-05-16 1996-11-29 Fuji Xerox Co Ltd プロセスディスパッチ方法
JPH10293694A (ja) * 1997-02-24 1998-11-04 N T T Data:Kk Cpu資源割当てを保証するためのプロセススケジューリング方式
JP2000115091A (ja) * 1998-10-07 2000-04-21 Nippon Hoso Kyokai <Nhk> 情報記録装置および情報再生装置
JP2001046747A (ja) * 1999-08-04 2001-02-20 Square Co Ltd ビデオゲームにおける処理実行制御方法、処理実行制御プログラムを記録した記録媒体及びゲーム装置
JP2001118100A (ja) * 1999-10-19 2001-04-27 Denso Corp セキュリティモジュール
JP2001202258A (ja) * 2000-01-20 2001-07-27 Yaskawa Electric Corp リアルタイム処理装置
JP2003116115A (ja) * 2001-06-29 2003-04-18 Toshiba Corp 限定受信モジュール装置、受信端末装置及び方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0659915A (ja) * 1992-08-10 1994-03-04 Nippon Telegr & Teleph Corp <Ntt> トランザクションの実行順序制御方法および装置
JPH06295247A (ja) * 1993-04-08 1994-10-21 Mitsubishi Electric Corp リアルタイム処理実現方法
JPH08314740A (ja) * 1995-05-16 1996-11-29 Fuji Xerox Co Ltd プロセスディスパッチ方法
JPH10293694A (ja) * 1997-02-24 1998-11-04 N T T Data:Kk Cpu資源割当てを保証するためのプロセススケジューリング方式
JP2000115091A (ja) * 1998-10-07 2000-04-21 Nippon Hoso Kyokai <Nhk> 情報記録装置および情報再生装置
JP2001046747A (ja) * 1999-08-04 2001-02-20 Square Co Ltd ビデオゲームにおける処理実行制御方法、処理実行制御プログラムを記録した記録媒体及びゲーム装置
JP2001118100A (ja) * 1999-10-19 2001-04-27 Denso Corp セキュリティモジュール
JP2001202258A (ja) * 2000-01-20 2001-07-27 Yaskawa Electric Corp リアルタイム処理装置
JP2003116115A (ja) * 2001-06-29 2003-04-18 Toshiba Corp 限定受信モジュール装置、受信端末装置及び方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007305029A (ja) * 2006-05-15 2007-11-22 Matsushita Electric Ind Co Ltd リアルタイムosにおける処理時間配分方法
JP4707603B2 (ja) * 2006-05-15 2011-06-22 パナソニック株式会社 リアルタイムosにおける処理時間配分方法
JP2008187641A (ja) * 2007-01-31 2008-08-14 Canon Inc 映像記録再生装置及びその制御方法
JP2012138015A (ja) * 2010-12-27 2012-07-19 Mizuho Information & Research Institute Inc タイムアウト監視システム及びタイムアウト監視プログラム

Also Published As

Publication number Publication date
JP4504236B2 (ja) 2010-07-14

Similar Documents

Publication Publication Date Title
US7493638B2 (en) Processing terminal, receiving terminal and received data processing system
US8270811B2 (en) Information management method, information playback apparatus, and information management apparatus
JP5046340B2 (ja) ディジタル・ビデオ・データを処理する装置
JP4642023B2 (ja) 受信装置、送出装置、セキュリティモジュール、及びデジタル権利管理システム
JP4247044B2 (ja) コンテンツ配信サービス提供装置及びコンテンツ配信サービス端末装置
KR100966970B1 (ko) 컨텐츠 방송용 보안 시스템에서 규정 비준수 키, 어플라이언스 또는 모듈의 폐기 리스트 갱신 방법
US7458101B2 (en) Information viewing/listening system, information player, and information provider
US8724808B2 (en) Method for secure distribution of digital data representing a multimedia content
US20150058631A1 (en) Content distribution service providing system and content distribution device and user terminal device thereof
EP1337113A2 (en) Content distribution system
US20070165854A1 (en) Secure system, secure device, terminal apparatus, method and program therefor
KR20010102012A (ko) 폐기 목록 관리 방법 및 장치
JPWO2005093992A1 (ja) 情報配信システム
CN101843109A (zh) 处理数据的方法和iptv接收设备
JP2002203070A (ja) メタデータ配信方法
JP4088909B2 (ja) コンテンツ課金方法及び課金センタ
JP4504236B2 (ja) 処理端末、受信端末及び受信データ処理システム
EP1309198A2 (en) Digital contents processing apparatus, system and method, and digital broadcasting system
JP2001258009A (ja) 電子メディア配信システム
JP2006094342A (ja) サーバー型コンテンツ提供システム、サーバー型コンテンツ提供装置、コンテンツ利用装置、サーバー型コンテンツ提供方法及びコンテンツ利用方法
JP4000752B2 (ja) コンテンツ配信システム
JP5258646B2 (ja) 放送受信装置、送信装置、放送システム、及び放送受信方法
JP2004511847A (ja) 接続回数フィールドをもつ接続リストを用いる取消リスト管理用の方法及び装置
JP2002247024A (ja) データ配信方法
JP4806977B2 (ja) 情報処理装置および方法、並びにプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100119

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100216

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: 20100323

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: 20100422

R150 Certificate of patent or registration of utility model

Ref document number: 4504236

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130430

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130430

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140430

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees