JP5754491B2 - 通信システム、通信装置及び通信方法、並びにコンピューター・プログラム - Google Patents

通信システム、通信装置及び通信方法、並びにコンピューター・プログラム Download PDF

Info

Publication number
JP5754491B2
JP5754491B2 JP2013222966A JP2013222966A JP5754491B2 JP 5754491 B2 JP5754491 B2 JP 5754491B2 JP 2013222966 A JP2013222966 A JP 2013222966A JP 2013222966 A JP2013222966 A JP 2013222966A JP 5754491 B2 JP5754491 B2 JP 5754491B2
Authority
JP
Japan
Prior art keywords
content
mutual authentication
authentication procedure
registration
transmission
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.)
Active
Application number
JP2013222966A
Other languages
English (en)
Other versions
JP2014068349A (ja
Inventor
中野 雄彦
雄彦 中野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2013222966A priority Critical patent/JP5754491B2/ja
Publication of JP2014068349A publication Critical patent/JP2014068349A/ja
Application granted granted Critical
Publication of JP5754491B2 publication Critical patent/JP5754491B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、コンテンツの伝送における不正利用を防止する通信システム、通信装置及び通信方法、並びにコンピューター・プログラムに係り、特に、暗号化コンテンツを伝送するとともに、暗号化コンテンツの復号鍵を所定の相互認証及び鍵交換(AKE)アルゴリズムに従って交換する通信システム、通信装置及び通信方法、並びにコンピューター・プログラムに関する。
さらに詳しくは、本発明は、WANなどの外部ネットワークを経由したリモート・アクセス(RA)を通じてコンテンツを安全に伝送する通信システム、往復遅延時間(RTT)やIPルーターのホップ回数(TTL)などの制限を超えつつ、リモート・アクセスを通じてコンテンツを安全に伝送する通信装置及び通信方法、並びにコンピューター・プログラムに係り、特に、通信システム、通信装置及び通信方法、並びにコンピューター・プログラムに関する。
従来、放送コンテンツやパッケージ・メディア中のコンテンツは、受信機器や再生機器が設置された場所、又は、これらの機器とホームネットワーク経由で接続された機器で利用すること(以下、「ローカル・アクセス(LA)」とも呼ぶ)が基本であった。例えば、屋外から携帯機器で上記の受信機器や再生機器と接続し、WAN(Wide Area Network)などの外部ネットワーク経由の伝送を伴ってコンテンツを利用すること(以下、「リモート・アクセス(RA)」とも呼ぶ)は、通信路やコーデックなどの技術的な観点から困難であった。しかし、将来的には、LTE(Long Term Evolution)やWiMAX(World Interoperability for Microwave Access)といったデータ通信技術、並びに、H.264などの高圧縮コーデックの普及が見込まれ、これらを活用することでリモート・アクセスの実現可能性が見えてくる。例えば、ユーザーが出先から自宅のサーバーにリモート・アクセスして、コンテンツを再生するという使い方である。
他方、ディジタル化されたコンテンツはコピーや改竄などの不正な操作が比較的容易である。とりわけ、リモート・アクセスにおいては、個人的又は家庭的なコンテンツの使用を許容しながら、コンテンツ伝送に介在する不正利用の防止、すなわち著作権保護の仕組みが必要である。
ディジタル・コンテンツの伝送保護に関する業界標準的な技術として、DTLA(Digital Transmission Licensing Administrator)が開発したDTCP(Digital Transmission Content Protection)が挙げられる。DTCPでは、コンテンツ伝送時における機器間の認証プロトコルと、暗号化コンテンツの伝送プロトコルについて取り決められている。その規定は、要約すれば、DTCP準拠機器は取り扱いが容易な圧縮コンテンツを非暗号の状態で機器外に送出しないことと、暗号化コンテンツを復号するために必要となる鍵交換を所定の相互認証及び鍵交換(Authentication and Key Exchange:AKE)アルゴリズムに従って行なうこと、並びにAKEコマンドにより鍵交換を行なう機器の範囲を制限することなどである。コンテンツ提供元であるサーバ(Source)とコンテンツ提供先であるクライアント(Sink)は、AKEコマンドの送受信により、認証手続きを経て鍵を共有化し、その鍵を用いて伝送路を暗号化してコンテンツの伝送を行なう。したがって、不正なクライアントは、サーバーとの認証に成功しないと暗号鍵を取得できないから、コンテンツを享受することはできない。
DTCPは、原初的には、IEEE1394などを伝送路に用いたホームネットワーク上におけるコンテンツ伝送について規定したものである。最近では、DLNA(Digital Living Network Alliance)に代表されるように、家庭内においても、ディジタル化されたAVコンテンツをIPネットワーク経由で流通させようという動きが本格的になっている。そこで、家庭内においてもディジタル・コンテンツをIPネットワーク経由で流通させることを意図して、IPネットワークに対応したDTCP技術、すなわちDTCP−IP(DTCP mapping to IP)の開発が進められている。
DTCP−IPは、DTCP技術をIPネットワークに移植した同様の技術であり、伝送路にIPネットワークを使用すること、暗号化されたコンテンツの伝送にHTTP(Hyper Text Transfer Protocol)やRTP(Real−Time Transfer Protocol)といった、IPネットワーク上で実装されたコンテンツ伝送用プロトコルを使用する。例えば、HTTPの手続きに従ってコンテンツを伝送する場合、SourceがHTTPサーバーとなり、SinkがHTTPクライアントとなって、HTTPのためのTCP/IPコネクションが作成され、暗号化コンテンツのダウンロード伝送が行なわれる(但し、アップロード伝送を行なうときには、SourceがHTTPクライアントとなりSinkがHTTPサーバーとなる)。
現在のDTCP−IP(DTCP Volume 1 Specification Supplement E Revision 1.2)は、主にコンテンツの家庭内のみの利用を確保することを意図したものである。このため、AKEコマンドに対し往復遅延時間(RTT:Round Trip Time)は最大7ミリ秒に制限され、また、IPルーターのホップ回数(TTL:Time To Live)の上限が3に設定されている。
例えば、SourceがDTCP−IP認証を開始してから終了する直前までの間、受信した各AKEコマンドを監視し続け、TTL値の最大値を更新し続け、認証手続きが終了する直前にTTL値の最大値をチェックし、この最大値が3以下であれば鍵交換して認証手続きを完了するが、3を超えると、最終段階の処理を行なわずに認証手続きを終わらせる情報通信システムについて提案がなされている(例えば、特許文献1を参照のこと)。
しかしながら、RTTやTTLの制限を課すと、家庭外の遠隔地から家庭内のホームネットワークのサーバーにある著作権保護されたコンテンツにアクセスすることはできない。
ユーザーの利便性を考えると、コンテンツへのリモート・アクセスを許容したいが、著作権保護したいというコンテンツ・オーナーの利益とは相反する。
特開2007−36351号公報
本発明の目的は、暗号化コンテンツの復号鍵を所定の相互認証及び鍵交換(AKE)アルゴリズムに従って交換して、コンテンツの伝送における不正利用を好適に防止することができる、優れた通信システム、通信装置及び通信方法、並びにコンピューター・プログラムを提供することにある。
本発明のさらなる目的は、往復遅延時間(RTT)やIPルーターのホップ回数(TTL)などの制限を超えつつ、WANなどの外部ネットワークを経由したリモート・アクセスを通じてコンテンツを安全に伝送することができる、優れた通信システム、通信装置及び通信方法、並びにコンピューター・プログラムを提供することにある。
本願は、上記課題を参酌してなされたものであり、請求項1に記載の発明は、コンテンツを提供するコンテンツ提供装置とコンテンツを利用する1以上のコンテンツ利用装置でコンテンツ伝送のための通信を行なう通信システムであって、
コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て、コンテンツを要求するコンテンツ利用装置を前記コンテンツ提供装置に登録する登録手段と、
コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、前記コンテンツ提供装置から前記登録手段により登録された前記コンテンツ利用装置へ、要求されたコンテンツを伝送する伝送手段と、
を具備する通信システムである。
但し、ここで言う「システム」とは、複数の装置(又は特定の機能を実現する機能モジュール)が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない。
本願の請求項2に記載の発明は、
コンテンツを要求するコンテンツ利用装置を、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録する登録手段と、
コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、前記登録手段により登録された前記コンテンツ利用装置へ、要求されたコンテンツを伝送する伝送手段と、
を具備する通信装置である。
本願の請求項3に記載の発明によれば、請求項2に記載の通信装置の登録手段は、前記第1の相互認証手続きに際し、IPルーターのホップ回数に関する制限をさらに課すが、他方の伝送手段は、前記第2の相互認証手続きに際し、IPルーターのホップ回数に関する制限をも課さないように構成されている。
本願の請求項4に記載の発明によれば、請求項2に記載の通信装置の登録手段は、登録するコンテンツ利用装置の台数を制限するように構成されている。
本願の請求項5に記載の発明によれば、請求項2又は4のいずれかに記載の通信装置の伝送手段は、前記登録手段に登録された正当なコンテンツ利用装置のうちコンテンツ伝送を許容する台数の上限を設定するように構成されている。
本願の請求項6に記載の発明によれば、請求項5に記載の通信装置の伝送手段は、第2の相互認証手続きを通じて前記コンテンツ利用装置の間で共有される交換鍵から生成される暗号鍵を用いてコンテンツを暗号化伝送し、その後、コンテンツ利用装置がアクセスを終了する際に発行する破棄要求に応じて、該当する交換鍵を破棄し、前記台数の上限のカウントを破棄した交換鍵の数に応じて減じるように構成されている。
本願の請求項7に記載の発明によれば、請求項2に記載の通信装置は、第2の相互認証手続きを経たコンテンツ伝送が可能であるコンテンツに所定の伝送可能情報が付加されているときには、伝送手段が、前記伝送可能情報が付加されていないコンテンツの伝送を禁止するが、前記伝送可能情報が付加されているコンテンツについては前記伝送可能情報を伴わずに伝送するように構成されている。
本願の請求項8に記載の発明によれば、請求項7に記載の通信装置は、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て、伝送可能情報が付加されたままコンテンツを伝送する第2の伝送手段をさらに備えている。
本願の請求項9に記載の発明によれば、請求項8に記載の通信装置の第2の伝送手段は、第1の相互認証手続きを通じて1台のコンテンツ利用装置のみの間で共有される代行用の交換鍵から生成される暗号鍵を用いて前記伝送可能情報が付加されたままコンテンツを暗号化伝送し、このコンテンツ利用装置が代行終了時に発行する破棄要求に応じて代行用の交換鍵を破棄するように構成されており、同時に2以上の代行用の交換鍵を生成し2台以上のコンテンツ利用装置が代行することはない。
本願の請求項10に記載の発明によれば、請求項1に記載の通信装置の伝送手段は、同じコンテンツを所定の台数以上のコンテンツ利用装置に同時に伝送しないように構成されている。
本願の請求項11に記載の発明によれば、請求項1に記載の通信装置の伝送手段は、第2の相互認証手続きを通じて伝送するコンテンツを暗号化する暗号鍵の生成に用いる交換の鍵を、コンテンツの伝送先となるコンテンツ利用装置毎に変えるとともに、暗号化伝送するコンテンツをコンテンツ利用装置毎に管理して、同じコンテンツを所定の台数以上のコンテンツ利用装置に同時に伝送しないように構成されている。
本願の請求項12に記載の発明によれば、請求項1に記載の通信装置は、提供するコンテンツを記録する記憶部を備え、伝送手段は、前記記憶部に記録してから所定時間が経過した後のコンテンツの伝送を許容するように構成されている。
本願の請求項13に記載の発明は、
コンテンツを要求するコンテンツ利用装置を、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録する登録ステップと、
コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、前記登録手段により登録された前記コンテンツ利用装置へ、要求されたコンテンツを伝送する伝送ステップと、
を有する通信方法である。
本願の請求項14に記載の発明は、
コンテンツ要求先となるコンテンツ提供装置に対し、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録手続きを行なう登録手続手段と、
コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、登録した後の前記コンテンツ提供装置に対し、コンテンツを要求するコンテンツ要求手段と、
を具備する通信装置である。
本願の請求項15に記載の発明によれば、請求項14の記載の通信装置において、登録手続手段による登録手続きでは、前記第1の相互認証手続きに際し、IPルーターのホップ回数に関する制限がさらに課されるが、コンテンツ要求手段によるコンテンツ要求時では前記第2の相互認証手続きに際し、IPルーターのホップ回数に関する制限をも課されない。
本願の請求項16に記載の発明によれば、請求項14の記載の通信装置のコンテンツ要求手段は、
前記第2の相互認証手続きを通じてコンテンツ提供装置との間で共有される交換鍵から生成される暗号鍵を用いて暗号化されたコンテンツを受信し、コンテンツ提供装置へのアクセス終了時に前記交換鍵の破棄要求を発行するように構成されている。
本願の請求項17に記載の発明によれば、第2の相互認証手続きを経たコンテンツ伝送が可能であるコンテンツに所定の伝送可能情報が付加されており、請求項14の記載の通信装置は、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て、前記伝送可能情報が付加されたままのコンテンツを要求する第2のコンテンツ要求手段をさらに備えている。
本願の請求項18に記載の発明によれば、請求項17の記載の通信装置の第2のコンテンツ要求手段は、第1の相互認証手続きを通じてコンテンツ提供装置との間で共有される代行用の交換鍵から生成される暗号鍵を用いて暗号化された、前記伝送可能情報が付加されたコンテンツを受信して、コンテンツ提供装置を代行するとともに、コンテンツ提供装置の代行を終了するときに前記代行用の交換鍵の破棄要求を発行するように構成されている。
本願の請求項19に記載の発明は、
コンテンツ要求先となるコンテンツ提供装置に対し、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録手続きを行なう登録手続ステップと、
コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、登録した後の前記コンテンツ提供装置に対し、コンテンツを要求するコンテンツ要求ステップと、
を有する通信方法である。
本願の請求項20に記載の発明は、ネットワーク経由でコンテンツを提供するための処理をコンピューター上で実行するようにコンピューター可読形式で記述されたコンピューター・プログラムであって、前記コンピューターを、
コンテンツを要求するコンテンツ利用装置を、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録する登録手段、
コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、前記登録手段により登録された前記コンテンツ利用装置へ、要求されたコンテンツを伝送する伝送手段、
として機能させるためのコンピューター・プログラムである。
本願の請求項21に記載の発明は、ネットワーク経由でコンテンツを要求するための処理をコンピューター上で実行するようにコンピューター可読形式で記述されたコンピューター・プログラムであって、前記コンピューターを、
コンテンツ要求先となるコンテンツ提供装置に対し、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録手続きを行なう登録手続手段と、
コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、登録した後の前記コンテンツ提供装置に対し、コンテンツを要求するコンテンツ要求手段と、
として機能させるためのコンピューター・プログラムである。
本願の請求項20、21に係る各コンピューター・プログラムは、コンピューター上で所定の処理を実現するようにコンピューター可読形式で記述されたコンピューター・プログラムをそれぞれ定義したものである。換言すれば、本願の請求項20、21に係る各コンピューター・プログラムをコンピューターにインストールすることによって、コンピューター上では協働的作用がそれぞれ発揮され、本願の請求項2、14に係る通信装置と同様の作用効果をそれぞれ得ることができる。
本願の請求項22に記載の発明は、
コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを記述した第1のプログラム、及び、コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを記述した第2のプログラムを記憶するプログラム記憶部と、
前記プログラム記憶部から読み出したプログラムを実行するプログラム実行部と、
前記プログラム実行部が前記第1のプログラムを実行したことを経て、コンテンツを要求するコンテンツ利用装置を示すコンテンツ利用装置識別情報を記憶するコンテンツ利用装置記憶部と、
前記プログラム実行部が前記第2のプログラムを実行したことを経て、前記コンテンツ利用装置記憶部にコンテンツ利用装置識別情報が記憶されたコンテンツ利用装置に、要求されたコンテンツを送信する送信部と、
を具備する通信装置である。
本願の請求項23に記載の発明によれば、請求項22に記載の通信装置は、動画像を圧縮又は復号する動画像処理用補助演算装置をさらに備えている。
本願の請求項24に記載の発明によれば、請求項23に記載の通信装置の同画像処理用補助演算装置が処理する動画像は、MPEG2、H264、又は、VC1アルゴリズムを備えている。
本願の請求項25に記載の発明によれば、請求項22に記載の通信装置において、第1のプログラムで記述される第1の相互認証手続きは、IPルーターのホップ回数に関する制限をさらに課す一方、前記第2のプログラムで記述される第2の相互認証手続きは、IPルーターのホップ回数に関する制限をも課さないようにしてもよい。
本願の請求項26に記載の発明によれば、請求項22に記載の通信装置のコンテンツ利用装置記憶部は、コンテンツ利用装置識別情報を記憶するコンテンツ利用装置の台数を制限するように構成されている。
本願の請求項27に記載の発明によれば、請求項22又は26のいずれかに記載の通信装置の送信部は、前記コンテンツ利用装置記憶部がコンテンツ利用装置識別情報を記憶するコンテンツ利用装置のうちコンテンツ伝送を許容する台数の上限を設定するように構成されている。
本願の請求項28に記載の発明によれば、請求項27に記載の通信装置の送信部は、前記第2の相互認証手続きを通じて前記コンテンツ利用装置の間で共有される交換鍵から生成される暗号鍵を用いてコンテンツを暗号化伝送し、前記コンテンツ利用装置がアクセス終了時に発行する破棄要求に応じて、該当する交換鍵を破棄し、前記台数の上限のカウントを破棄した交換鍵の数に応じて減じるように構成されている。
本願の請求項29に記載の発明によれば、請求項22に記載の通信装置において、第2の相互認証手続きを経たコンテンツ伝送が可能であるコンテンツには所定の伝送可能情報が付加されており、送信部は、前記伝送可能情報が付加されていないコンテンツの伝送を禁止し、前記伝送可能情報が付加されているコンテンツについては前記伝送可能情報を伴わずに伝送するように構成されている。
本願の請求項30に記載の発明によれば、請求項22に記載の通信装置は、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て、前記伝送可能情報が付加されたままコンテンツを伝送する第2の送信部をさらに備えている。
本願の請求項31に記載の発明によれば、請求項30に記載の通信装置の第2の送信部は、前記第1の相互認証手続きを通じて1台のコンテンツ利用装置のみの間で共有される代行用の交換鍵から生成される暗号鍵を用いて前記伝送可能情報が付加されたままコンテンツを暗号化伝送し、前記1台のコンテンツ利用装置が代行終了時に発行する破棄要求に応じて、前記代行用の交換鍵を破棄するように構成されている。
本願の請求項32に記載の発明によれば、請求項22に記載の通信装置の送信部は、同じコンテンツを所定の台数以上のコンテンツ利用装置に同時に伝送しないように構成されている。
本願の請求項33に記載の発明によれば、請求項22に記載の通信装置の送信部は、前記第2の相互認証手続きを通じて伝送するコンテンツを暗号化する暗号鍵の生成に用いる交換の鍵を、コンテンツの伝送先となるコンテンツ利用装置毎に変えるとともに、暗号化伝送するコンテンツをコンテンツ利用装置毎に管理して、同じコンテンツを所定の台数以上のコンテンツ利用装置に同時に伝送しないように構成されている。
本願の請求項34に記載の発明によれば、請求項22に記載の通信装置は、提供するコンテンツを記録するコンテンツ記憶部を備え、記送信部は、前記コンテンツ記憶部に記録してから所定時間が経過した後のコンテンツの伝送を許容するように構成されている。
本発明によれば、往復遅延時間(RTT)やIPルーターのホップ回数(TTL)などの制限を超えつつ、WANなどの外部ネットワークを経由したリモート・アクセスを通じてコンテンツを安全に伝送することができる、優れた通信システム、通信装置及び通信方法、並びにコンピューター・プログラムを提供することができる。
現行のDTCP−IPなどでは、相互認証及び鍵交換手続きにおいて、RTTやTTLが制限されているため、リモート・アクセスに適用することはできない。これに対し、本願の請求項1、2、3、13、14、15、19乃至21、22乃至25に記載の発明によると、伝送手段はRTTやTTLの制限を課さないので、コンテンツ提供装置にリモート・アクセスするコンテンツ利用装置へ、コンテンツを伝送することができる。また、本願の請求項1、2、3、13、14、15、19乃至21、22乃至25に記載の発明によれば、登録手段によりRTTやTTLが制限された相互認証及び鍵交換手続きに従ってコンテンツ利用装置を登録し、伝送手段は事前に登録されたコンテンツ利用装置にのみコンテンツを伝送するので、不特定多数のユーザーからのリモート・アクセスを制限して、コンテンツの著作権保護を確保することができる。
本願の請求項4乃至6、16、26乃至28に記載の発明によれば、登録するコンテンツ利用装置の台数を制限し、あるいは、登録されたコンテンツ利用装置のうちリモート・アクセス用の交換鍵を渡す台数を制限することで、不正利用の規模を限定することができる。また、本願の請求項4乃至6、16、26乃至28に記載の発明によれば、登録台数を制限する以外に、コンテンツ伝送を許容する台数を制限することによって、登録できるコンテンツ利用装置の台数を、実際にコンテンツを利用できる台数に比べて大きく設定することができ、その結果、新たなコンテンツ利用装置を登録する際に古い登録内容を消去する手間を省くことができる。
機器仕様によっては、Sinkとしてのコンテンツ利用装置がSourceとしてのコンテンツ提供装置の機能を兼ね備える場合がある。このように2つの機能を備える機器同士の接続関係をデイジーチェーン形式に繰り返すと、コンテンツ利用装置の登録を順次行なうことで、コンテンツを伝送可能な範囲、すなわち不正使用の規模は無限に拡大しかねない。これに対し、本願の請求項7、29に記載の発明によれば、要求元のコンテンツ利用装置が事前に登録された正当なものであっても、伝送可能情報が付加されていないコンテンツを、コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きのみによって伝送することを禁止して、コンテンツ提供元が意図しない範囲にまでコンテンツが提供されないようにすることができる。
本願の請求項7、29に記載の発明によると、コンテンツ提供装置がコマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経たコンテンツ伝送に対応していない場合には、伝送可能情報が付加されたコンテンツであっても、1度もコマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経たコンテンツ伝送が行なわれないことになり、コンテンツを提供できる範囲が不当に制限されてしまうことになる。これに対し、本願の請求項8、9、17、18、30、31に記載の発明によれば、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て前記伝送可能情報が付加されたままコンテンツを伝送することができるので、第1の相互認証手続きが可能な範囲内において、コンテンツ伝送先となるコンテンツ利用装置はコンテンツ提供元に代行して、第2の相互認証手続きを経たコンテンツ伝送を行なうことができ、コンテンツを提供できる適正な範囲を確保することができる。また、本願の請求項9に記載の発明によれば、コンテンツの伝送を代行するコンテンツ利用装置を1台のみに限定することができる。
本願の請求項10、11、32、33に記載の発明によれば、コンテンツを同時にリモート・アクセスを利用できる数を制限することで不正の脅威を小さくすることができる。
本願の請求項7、29に記載の発明によれば、伝送可能情報が付加されたコンテンツのみ、伝送手段によりコンテンツ利用装置に提供することが許可される。しかしながら、記録可能なコンテンツであれば、伝送可能情報が付加されていなくても、記録媒体に書き込んで持ち出すことで、コンテンツ利用装置に提供することができる。そこで、本願の請求項12、34に記載の発明のように、記憶部に記録してから所定時間が経過した後のコンテンツについては、伝送可能情報の有無に拘わらず、コンテンツ利用装置に提供できるようにしてもよい。
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
図1は、本発明に係る通信システムの一構成例を模式的に示した図である。 図2は、本発明に係る通信システムの他の構成例を模式的に示した図である。 図3は、コンテンツ提供装置10の機能的構成を模式的に示した図である。 図4は、コンテンツ利用装置20の機能的構成を模式的に示した図である。 図5は、SourceとSinkの間でDTCP−IPにより暗号化コンテンツ伝送を行なう仕組みを説明するための図である。 図6は、SourceとSink間で現行のDTCP−IPに従って行なわれる、AKEコマンドを用いた相互認証及び鍵交換の動作シーケンスを示した図である。 図7は、RA−SourceにRA−Sinkを登録する際の認証シーケンス例を示した図である。 図8は、RA−SourceがRA−Sinkを登録するための「RA−Sink Registratoin」処理の手順を示したフローチャートである。 図9は、RA−SourceがRA−Sinkに対してリモート・アクセス用の交換鍵を供給する際の認証シーケンス例を示した図である。 図10は、RA−SourceがRA−Sinkの登録確認及びリモート・アクセス用の交換鍵の供給数確認を行なうための「RA−Sink ID confirmation」処理の手順を示したフローチャートである。 図11は、RA−Source、RA−Sinkがさらに別の機器にデイジーチェーン接続され、受信したコンテンツをさらに出力する可能性があるシステム構成例を模式的に示した図である。 図12は、RA−Source、RA−Sinkがさらに別の機器にデイジーチェーン接続され、受信したコンテンツをさらに出力する可能性があるシステム構成例を模式的に示した図である。 図13は、RA−Source、RA−Sinkがさらに別の機器にデイジーチェーン接続され、受信したコンテンツをさらに出力する可能性があるシステム構成例を模式的に示した図である。 図14は、DEP−RA−AKEを行なってSource#0が鍵をSink#1とだけ共有する際の認証シーケンス例を示した図である。 図15は、SourceがSinkにコンテンツのリモート・アクセス出力の代行を認証する「DEP_RA−Sink Confirmation」処理の手順を示したフローチャートである。 図16は、同じコンテンツを同時に伝送するRA−Sinkの台数が制限される場合の、RA−SinkがRA−Sourceにコンテンツを要求する際の動作シーケンスを示した図である。 図17は、A−Sourceがコンテンツ・データのリクエストに応じて実行する、同一コンテンツの出力数を管理するための処理手順を示したフローチャートである。 図18は、RA−Sourceとして動作する機器がコンテンツを記録又はMOVE機能で取り込むための処理手順を示したフローチャートである。 図19は、RA−SinkがRA−Sourceにコンテンツを要求する際の動作シーケンスを示した図である。 図20は、コンテンツのリモート・アクセス(RA)出力数管理1の処理手順を示したフローチャートである。 図21は、SinkがSourceに対してリモート・アクセスを代行するコンテンツを要求する際の動作シーケンスを示した図である。 図22は、コンテンツのリモート・アクセス出力代行管理の処理手順を示したフローチャートである。 図23は、RA−flagの改竄を防ぐ方法の一例を説明するための図であり、具体的には、RA−flagの値を暗号鍵の計算をする関数に入力にして、暗号鍵Kcの値に反映させたりする方法を示した図である。 図24は、RA−flagの改竄を防ぐ方法の一例を説明するための図であり、具体的には、RA−flagを含む、平文で伝送する情報を、その情報と暗号鍵をハッシュ関数で処理して署名データを求める方法を示した図である。 図25は、RA−flagの改竄を防ぐ方法の一例を説明するための図であり、具体的には、RA−flagをコンテンツ・データとともに暗号化する際の格納先を示した図である。 図26は、RA−flagの改竄を防ぐ方法の一例を説明するための図であり、具体的には、RA−flagをコンテンツ・データとともに暗号化する際の格納先を示した図である。 図27は、RA−Sourceが、コンテンツに設定されたRA−flag及びTを更新するための処理手順を示したフローチャートである。 図28は、リモート・アクセス用のAKE control commandの構成例を示した図である。 図29は、コンテンツ提供装置に適用されるパーソナル・コンピューターの構成例を示した図である。 図30は、コンテンツ提供装置に適用されるレコーダーの構成例を示した図である。
本発明は、WANなどの外部ネットワークを経由したリモート・アクセス(RA)を通じてコンテンツを安全に伝送する通信システムに関するものである。同通信システムは、基本的に、リモート・アクセスによりコンテンツを提供するサーバ(RA−Source)と、リモート・アクセスによりコンテンツを要求するクライアント(RA−Sink)からなる。本明細書では、リモート・アクセス時に行なうAKE手続きを、「RA−AKE」と呼ぶことにする。以下、図面を参照しながら本発明の実施形態について詳細に説明する。
図1には、本発明に係る通信システムの一構成例を模式的に示している。図示の通信システムでは、RA−Sourceに相当するコンテンツ提供装置10が家庭内に設置され、RA−Sinkに相当するコンテンツ利用装置20が屋外にいる。そして、コンテンツ利用装置20は、携帯電話のような通信機能によってコンテンツ提供装置10に対してリモート・アクセスする。
コンテンツ提供装置10は、一般にルーター30とモデム40経由でWAN50などの外部ネットワークに接続される。WAN50は例えばインターネットである。ルーター30には、WAN50側のIPアドレスが、ユーザーが加入するIntenet Accsess Service(IAS)プロバイダー60から割り当てられる。また、コンテンツ利用装置20も、基本的にこのIPアドレスにアクセスする。ルーター30は、コンテンツ提供装置10にはプライベートIPアドレスを割り当て、WAN50からのアクセスについてはポート・フォワーディングによって通信を中継する。なお、ルーター30に割り当てられるIPアドレスは、IASプロバイダー60によって更新される場合があるが、そのようなケースではDDNSサービス70を用い、ルーター30乃至コンテンツ提供装置10のDDNS(Dynamic DNS(Domain Name System))機能を使うことで対応できる。
また、図2には、本発明に係る通信システムの他の構成例を模式的に示している。図示の通信システムでは、RA−Sinkに相当するコンテンツ利用装置20も家庭内に設置され、ルーター31とモデム41経由でWAN50に接続されている。コンテンツ利用装置20から発信されるTCP/IP(Transmission Control Protocol/Internet Protocol)通信は、ルーター31のNAT(Network Address Translation)機能によってアドレス変換されるが、それ以外は図1の場合と同様である。
図3には、コンテンツ提供装置10の機能的構成を模式的に示している。コンテンツ提供装置10は、CPU(Central Processing Unit)11と、コンテンツ受信/再生部12と、通信部13と、記憶部14と、タイマー15を備えるが、RA−Sourceとして機能して、リモート・アクセスでコンテンツを送信する。
コンテンツ受信/再生部12は、放送受信機能や、パッケージ・メディア再生機能をそなえている。CPU11は、コンテンツ受信/再生部12で得られるコンテンツについて、リモート・アクセス可能なものを適切な保護を施した後に、通信部13を通じて、RA−AKEにより相互認証及び鍵交換を行なったRA−Sink(コンテンツ利用装置20)に送信する。
記憶部14には、後述の登録処理によって記憶することになったRA−Sinkの識別情報や、RA−AKEを通じてRA−Sinkと共有したリモート・アセス用の交換鍵とその交換鍵の識別情報などが記憶される。また、記憶部14は、コンテンツ受信/再生部12で得たコンテンツを蓄積する用途で用いることもできる。
タイマー15は、リモート・アクセス可能なコンテンツを扱う際に、時間管理が必要となる場合(例えば、後述するように、基準点時刻からのリモート・アクセス不可期限を管理する場合)に使われる。
図4には、コンテンツ利用装置20の機能的構成を模式的に示している。コンテンツ利用装置20は、CPU21と、通信部22と、コンテンツ出力部23と、記憶部24を備えるが、RA−Sinkとして機能して、リモート・アクセスでコンテンツを受信する。
RA−Sinkとしてのコンテンツ利用装置20は、通信部22を通じてRA−Source(コンテンツ提供装置10)に対して後述の機器登録処理を行なう他、RA−AKEを行なってRA−Sourceから交換鍵を取得して記憶部24に保持するとともに、その鍵を基に算出する暗号鍵でRA−Sourceから得た暗号化コンテンツを復号して、コンテンツ出力部23からコンテンツを出力する。記憶部24は、RA−Sourceから受け取った交換鍵やコンテンツを蓄積する用途で用いられる。
以下の説明では、交換鍵から暗号鍵を算出する方法はDTCP−IPに従うものとする(但し、本発明の要旨は必ずしもこの方法には限定されない)。
ここで、SourceとSinkの間でDTCP−IPにより暗号化コンテンツ伝送を行なう仕組みについて、図5を参照しながら説明しておく。コンテンツ伝送の形態は、Source上のコンテンツをSinkにコピーする方法と、SourceからSinkへコンテンツを移動してSourceにコンテンツを残さない方法があるが(周知)、同図では前者のコピーによるコンテンツ伝送方法を前提にして説明する。
SourceとSinkは、まず1つのTCP/IPコネクションを確立して、機器同士の認証(AKE手続き)を行なう。DTCP準拠機器には、DTLA(前述)により発行された機器証明書が埋め込まれている。AKE手続きでは、互いが正規のDTCP準拠機器であることを確かめた後、認証鍵KauthをSourceとSinkで共有することができる。
AKE手続きが成功すると、Sourceはコンテンツ鍵Kcの種となる交換鍵Kxを生成し、認証鍵Kauthで暗号化してSinkに送る。Source及びSinkそれぞれにおいて、交換鍵Kxに対して所定の演算処理を適用することによって、コンテンツ伝送時にコンテンツを暗号化するために使用されるコンテンツ鍵Kcを生成することができる。
そして、DTCP準拠の機器間でAKEによる認証及び鍵交換手続きが済んだ後、HTTPやRTPなどのプロトコルを利用してコンテンツ伝送が開始される。図示の例では、HTTPの手続きに従ってコンテンツ伝送が行なわれる。その際、AKE手続きのためのTCP/IPコネクションとは別に、HTTPのためのTCP/IPコネクションが作成される(すなわち、SourceとSinkはそれぞれ、AKE手続き用とコンテンツ伝送用に個別のソケット情報(IPアドレスとポート番号の組み合わせ)を持つ)。
HTTPプロトコルに従ってコンテンツ伝送を行なうには、SinkがSourceにコンテンツを要求するダウンロード形式と、Source側からSinkにコンテンツをプッシュするアップロード形式の2通りが挙げられる。前者の場合、HTTPクライアントとしてのSinkは、例えばHTTP GETメソッドを用いたHTTPリクエストにより、HTTPサーバーとしてのSourceにコンテンツを要求し、これに対し、Souceからは要求通りのコンテンツがHTTPレスポンスとして伝送される。また後者の場合、HTTPクライアントとしてのSourceは、例えばHTTP POSTメソッドを用いたHTTPリクエストにより、HTTPサーバーとしてのSinkとの伝送を開始する。
Sourceから伝送されるデータは、SourceがAKE認証をした後に共有した鍵を用いてコンテンツを暗号化したデータとなっている。具体的には、Sourceは、乱数を用いてノンスNcを生成して、交換鍵KxとノンスNcと暗号モードに応じたコンテンツ鍵Kcを生成する。そして、Sinkから要求されているコンテンツを、コンテンツ鍵Kcを用いて暗号化し、暗号化コンテンツからなるペイロードとノンスNcと暗号モードの情報を含んだヘッダからなるパケットをTCPストリーム上に乗せて送信する。IPプロトコルでは、TCPストリームを所定の単位となるパケットの大きさに分割し、さらにヘッダ部を付加したIPパケットにし、指定されたIPアドレス宛てに届ける。
Sink側では、Sourceからの各IPパケットを受信すると、これをTCPストリームに組み立てる。そして、このストリームからノンスNcとE−EMIを取り出すと、これらと交換鍵Kxを用いてコンテンツ鍵Kcを算出し、暗号化コンテンツを復号することができる。そして、復号化した後の平文のコンテンツに対し再生処理を実施することができる。あるいは、Sinkは、暗号化コンテンツを復号することなく、コンテンツを記憶部24に格納したり、他の機器にスルーしたりする。このようにしてHTTPプロトコルを利用したコンテンツ伝送が終了すると、例えばSink側から、コンテンツ伝送に使用したTCPコネクションを適宜切断する。(DTCP−IPでは、パケットのヘッダ部に記述するE−EMI(ExtendedEncryption Mode Indicator)と、Embedded CCI(Copy Control Information)という2つのメカニズムにより、コンテンツに付随したコピー制御情報の伝送を実現している。)
なお、DTCP−IPでは、連続不使用時間が所定の期間(例えば2時間)を超える前に破棄することが規定されている。SinkはSourceから最新の交換鍵Kxを入手できなければ、暗号化コンテンツを利用不能となる。また、交換鍵Kxの運用方法には、Sink毎に1つずつ鍵を用意する方法と、Sinkによらず1つの鍵を使う方法がある。
図6には、SourceとSink間で現行のDTCP−IPに従って行なわれる、AKEコマンドを用いた相互認証及び鍵交換の動作シーケンス(RTT−AKE)を示している。
AKE手続きのチャレンジ・レスポンス部分(Challenge−Response portion of AKE)では、まず、コンテンツを要求するSinkから、Rx乱数とRx証明書を含んだRxチャレンジが送信される。これに対し、Sourceからは、Tx乱数及びTx証明書を含んだTxチャレンジが返信される。以降、Sourceから、Rx乱数、Txメッセージ、Tx署名を含んだRxレスポンスが送信されるとともに、SinkからはTx乱数、Rxメッセージ、Rx署名を含んだTxレスポンスが送信され、通常のチャレンジ・レスポンス認証手続きが続く。チャレンジ・レスポンス部分で送信されるコマンドには、各チャレンジ・コマンドには、機器固有の識別情報であるDevice IDが含まれている。
上記のチャレンジ・レスポンス応答手続きでは、TTL(IPルーターのホップ回数)の制限が課されている。すなわち、現在のDTCP−IPでは、送信機器はAKEで用いるコマンドを送るTCP/IP通信においてTTLが3以下に設定され、受信機器はTTLが3より大きい場合は受け取ったデータを無効にしなければならない。
その後、RTT保護プロトコル(Protected RTT Protocol)を経て、SourceからSinkへ、EXCHANGE_KEYコマンドが送信され、これに対し、Sinkからレスポンス(図示しない)が返される。
図6に示した現行のDTCP−IPに従うRTT−AKEでは、AKEコマンドに対し往復遅延時間(RTT)やIPルーターのホップ回数(TTL)が制限されており、現状のままでは、リモート・アクセスに適用することはできない(前述)。しかしながら、ユーザーの利便性を考えると、ユーザーが出先から自宅のサーバーにリモート・アクセスして、コンテンツを再生するという使い方が望まれる。勿論、著作権保護したいというコンテンツ・オーナーの利益を確保する必要がある。したがって、リモート・アクセスは、コンテンツ・オーナーが許容するコンテンツの範囲内に制限すべきであり、且つ、リモート・アクセスされるコンテンツの保護も行なわなければならない。
これに対し、本発明として提案する、リモート・アクセス時のAKE手続きすなわちRA−AKEでは、図6に示したRTT−AKE手続きで行なっている「Protected RTT Protocol」を行なわない。すなわち、SourceとSinkの間のRTTが7ミリ秒を超えてもAKE手続きを中止しない。また、RA−AKEでは、上記のTTLの上限を設けない。すなわち、RA−AKEでは、RTT並びにTTLの制限を設けないことで、リモート・アクセスに対応するSource(コンテンツ提供装置10)と、リモート・アクセスに対応するSink(コンテンツ利用装置20)が、応答遅延時間が7ミリ秒を超え、又は、ホップ数が3を超えるだけ離間していたとしても、両機器間でAKE手続きを成功裏に実施して、リモート・アクセス用の交換鍵を共有することができる。
但し、RTT並びにTTLの制限が外された状態の通信システムでは、任意の機器間でコンテンツの伝送が可能になるため、コンテンツの著作権保護の観点から不正な利用を防止する仕組みが必要になる。
RA−AKE手続きにおいてRTT並びにTTLの制限を設けないことに伴う不正な利用方法の1つとして、不特定多数(言い換えれば、著作権法で許容される私的使用の範囲を超えた)のユーザーが各自のRA−Sinkを特定のユーザーのRA−Sourceと接続し、そのコンテンツを遠隔利用することが考えられる。したがって、不特定多数のユーザーからの接続を制限する必要がある。
不特定多数のユーザーからの接続を制限するために、RA−Sourceが事前に登録されたRA−SinkとだけRA−AKE手続きを行なう方法と、RA−AKE手続きで鍵を渡すRA−Sinkの台数を制限する方法が考えられる。前者の事前登録に関しては、現在のDTCP−IPのRTT−AKEのように、RTTやTTL制限を伴うAKE手続きに成功した場合にだけ、RA−SourceがRA−Sinkの機器固有IDを記憶するようにすることで、不特定多数のユーザーがRA−AKE手続きを成功できないようにする。
また、RA−Sourceに登録するRA−Sinkの台数を制限することで、不正利用の規模を限定することができる。以下では、RA−Sourceは、所定台数までのRA−SinkのIDを登録するための「RAレジストリー」(記憶部14内に)を備えているものとする。ここで、仮にRA−Sinkの機器固有IDをRA−Sourceに登録できた場合であっても、後述するように、コンテンツ伝送の際にリモート・アクセス用の交換鍵を供給するRA−Sinkの台数を制限することで、不正利用の規模を限定することができる。
RA−Sinkの登録手続きは、例えば、RTT並びにTTLの制限に収まる家庭内で事前に行なわれる。その際、RA−Sourceは多めの10台のRA−Sinkを登録するようにしてもよい。そして、RA−Sourceに対し10台のRA−Sinkを事前登録したとしても、RA−Sourceはこのうちの5台までしかリモート・アクセス用の交換鍵を渡さないようにする。
図7には、RA−SourceにRA−Sinkを登録する際の認証シーケンス例を示している。
この認証シーケンスは、RA−SinkがRA−Sourceに対して登録要求コマンド「RA_REGI_INIT」を送信することによって開始する。RA−AKE手続きのチャレンジ・レスポンス部分(Challenge−Response portion of AKE)では、まず、RA−Sinkから、Rx乱数とRx証明書を含んだRxチャレンジが送信される。これに対し、RA−Sourceからは、Tx乱数及びTx証明書を含んだTxチャレンジが返信される。以降、RA−Sourceから、Rx乱数、Txメッセージ、Tx署名を含んだRxレスポンスが送信されるとともに、RA−SinkからはTx乱数、Rxメッセージ、Rx署名を含んだTxレスポンスが送信される。なお、「RA_REGI_INIT」を送信する代わりに、Rxチャレンジとして送信する情報の中に、「RA_REGI_INIT」の送信に相当する情報、例えば「RA_REGI_INIT_flag」を含める方法も考えられる。
各チャレンジ・コマンドには、機器固有の識別情報であるDevice IDが含まれている。但し、同チャレンジ・レスポンス部分の中では、SinkからSourceへのレスポンスとして「RESPONSE2」が送られることがある。これは、機器がCommon Device KeyとCommon Device Certificateを実装することで、Device IDが機器固有とならない場合である。RESPONSE2が送られる場合は、機器固有の識別情報として、Device IDではなく、RESPONSE2に含まれる機器固有情報であるIDuを使うことになる。
登録手続きにおけるRA−AKE手続きのチャレンジ・レスポンス部分は、現行のDTCP−IPにおけるRTT−AKE手続きと同様の処理となり、TTLの制限が課されている。その後、RTT保護プロトコル(Protected RTT Protocol)がさらに続き、RA−SourceとRA−Sinkの間のRTTが7ミリ秒を超えるとRA−AKE手続きを中止する。
RA−Sourceは、ここまでの手順に成功したRA−Sinkを登録するための「RA−Sink Registratoin」処理を実行する。そして、RA−Sourceは、記憶部14内のRAレジストリーにRA−SinkのIDを登録できる余裕があれば追加登録し、その結果を、結果コードを送るコマンド「RA_REGI_END」でRA−Sinkに通知する。
なお、図7中の「RA_REGI_INIT」と「RA_REGI_END」は、DTCP−IPのAKE control commandにリモート・アクセス用のコマンドとして追加するものとする。図28には、リモート・アクセス用のAKE control commandの構成例を示している。図示の例では、subfunctionフィールドに新たな値を割り当て、AKE_Infoで情報を運ぶことができる。
図8には、RA−SourceがRA−Sinkを登録するための「RA−Sink Registratoin」処理の手順をフローチャートの形式で示している。
RA−Sourceは、まず、当該処理ルーチンを開始する以前の処理(Challenge−Response portion of AKE、並びに、Protected RTT Protocol)を異常終了(abort)したか否かをチェックする(ステップS1)。
ここで、以前の処理を異常終了していた場合には(ステップS1のNo)、RA−Sourceは、要求元のRA−Sinkに対し、登録処理に「失敗」した旨の結果コードを通知して(ステップS9)、本処理ルーチンを終了する。
また、以前の処理を正常に終了していた場合には(ステップS1のYes)、RA−Sourceは、RESPONSE2(前述)を受信したか否かをチェックする(ステップS2)。そして、RESPONSE2を受信したときには(ステップS2のYes)、RA−Sourceは、要求元のRA−SinkのIDをIDuとする(ステップS3)。また、RESPONSE2を受信していないときには(ステップS2のNo)、RA−Sourceは、要求元のRA−SinkのDevice IDをIDとする(ステップS4)。
次いで、RA−Sourceは、要求元のRA−SinkのIDをRAレジストリーに既に登録済みか否かをチェックする(ステップS5)。
ここで、要求元のRA−SinkのIDをRAレジストリーに既に登録済みである場合には(ステップS5のYes)、RA−Sourceは、要求元のRA−Sinkに対し、登録処理に「成功」した旨の結果コードを通知して(ステップS8)、本処理ルーチンを終了する。
他方、要求元のRA−SinkのIDをRAレジストリーにまだ登録していないときには(ステップS5のNo)、RA−Sourceは、続いて、記憶部14内のRAレジストリーに空きがあるか否かをチェックする(ステップS6)。
ここで、RAレジストリーに空きがない場合には(ステップS6のNo)、RA−Sourceは、要求元のRA−Sinkに対し、登録処理に「失敗」した旨の結果コードを通知して(ステップS9)、本処理ルーチンを終了する。
また、RAレジストリーに空きがある場合には(ステップS6のYes)、RA−Sourceは、RAレジストリーにRA−SinkのIDを追加登録する(ステップS7)。そして、RA−Sourceは、要求元のRA−Sinkに対し、登録処理に「成功」した旨の結果コードを通知して(ステップS8)、本処理ルーチンを終了する。
図7並びに図8を参照しながら説明したように、RA−Sourceは、RTT−AKEと同様の認証手順に成功すると、RAレジストリーにRA−SinkのIDを登録できる余裕があれば追加登録する。RA−Sinkは、RA−Sourceにリモート・アクセスするには、上記認証手順を経て自分のIDをRA−SourceのRAレジストリーに登録することが必要である。したがって、RA−Sourceは、RAレジストリーの登録可能数によって、RA−Sourceを利用可能なRA−Sinkの台数を制限して、コンテンツの不正利用の規模を限定することができる。
図9には、RA−SourceがRA−Sinkに対してリモート・アクセス用の交換鍵を供給する際の認証シーケンス例を示している。図示のシーケンスは、リモート・アクセス用の交換鍵を供給するRA−Sinkの台数を制限する仕組みを備えている。
この認証シーケンスは、RA−SinkがRA−Sourceに対して鍵供給要求コマンド「RA_AKE_INIT」を送信することによって開始する。RA−AKE手続きのチャレンジ・レスポンス部分(Challenge−Response portion of AKE)では、まず、RA−Sinkから、Rx乱数とRx証明書を含んだRxチャレンジが送信される。これに対しRA−Sourceからは、Tx乱数及びTx証明書を含んだTxチャレンジが返信される。以降、RA−Sourceから、Rx乱数、Txメッセージ、Tx署名を含んだRxレスポンスが送信されるとともに、RA−SinkからはTx乱数、Rxメッセージ、Rx署名を含んだTxレスポンスが送信される。なお、「RA_AKE_INIT」を送信する代わりに、Rxチャレンジとして送信する情報の中に、「RA_AKE_INIT」の送信に相当する情報、例えば「RA_AKE_INIT_flag」を含める方法も考えられる。
各チャレンジ・コマンドには、機器固有の識別情報であるDevice IDが含まれている。但し、同チャレンジ・レスポンス部分の中では、SinkからSourceへのレスポンスとして「RESPONSE2」が送られることがあるが、その場合は、機器固有の識別情報として、Device IDではなく、RESPONSE2に含まれるIDuを使うことになる(同上)。
TTLの制限は、RA−Sourceへ登録する際には必要であるが、リモート・アクセス用の交換鍵供給のためのRA−AKE手続きでは省略される。また、RTT保護プロトコル(Protected RTT Protocol)も、鍵供給のためのRA−AKE手続きでは省略される。これによって、RA−Sinkは、リモート環境下でもリモート・アクセス用の交換鍵を要求することができ、すなわち、リモート・アクセスによるコンテンツの利用が可能になる。
そして、上記の認証手順に成功すると、RA−Sourceは、「RA−Sink ID confirmation」処理を実行する。この処理では、RA−Sourceは、要求元のRA−SinkのIDがRAレジストリーに登録済みであることを確認するとともに、リモート・アクセス用の交換鍵の供給数(KC)が上限を超えていないかを確認する。そして、RA−Sourceは、これらの確認ができた場合に、リモート・アクセス用の交換鍵(RA_Kx)と、当該交換鍵のID(RA_Kx_label)と結果コードを、コマンド「RA_EXCHANGE_KEY」でRA−Sinkに渡す。
なお、リモート・アクセス用の交換鍵の供給数KCの上限は、記憶部14内のRAレジストリーに登録できるIDの数と同じか、それより少なく設定される。つまり、事前登録する台数の制限によってコンテンツの不正利用の規模を限定する以外に、KCの上限によってRA−Sinkの利用可能な数を制限して不正利用の規模をさらに限定することが可能である。また、RAレジストリーへの登録台数の制限の他に、KCの上限を設けることによって、RA−Sourceへ登録できるRA−Sinkの台数を、コンテンツを利用できるRA−Sinkの台数に比べて大きく設定することができ、その結果、新たなRA−Sinkを登録する際に古い登録内容を消去する手間を省くことができる。
リモート・アクセス用の交換鍵の供給数KCは、RA−SourceがRA−Sinkに渡した交換鍵のうち、有効なものの数である。したがって、どのRA−Sinkにも交換鍵を渡していない初期状態ではKCはゼロであり、渡した交換鍵をRA−Sourceが破棄したときはその分を減らすことができる。
ここで、KCの上限が2以上の場合、リモート・アクセス用の交換鍵の運用方法には、RA−Sink毎に1つずつ鍵を用意する方法と、RA−Sinkによらず1つの鍵を使う方法がある。前者の場合は1つの交換鍵を破棄するとKCを1つ減らすことになり、後者の場合は交換鍵を破棄するとKCをゼロにリセットすることになる。
リモート・アクセス用の交換鍵の(RA_Kx)の破棄については、DTCP−IPと同様に連続不使用期間が所定の期間を超える前に破棄するというルールで運用することが考えられる。また、RA−Sinkがリモート・アクセスの終了時に当該交換鍵の破棄を求めるコマンド(RA_FINISH)を交換鍵のID(RA_Kx_label)とともに送るという運用形態も考えられる。この破棄要求コマンドRA_FINISHは、図9中の「RA−AKE_INIT」、「RA_EXCHANGE_KEY」とともに、DTCP−IPのAKE control commandに、リモート・アクセス用のコマンドとして追加するものとする。
図10には、RA−SourceがRA−Sinkの登録確認及びリモート・アクセス用の交換鍵の供給数確認を行なうための「RA−Sink ID confirmation」処理の手順をフローチャートの形式で示している。
RA−Sourceは、まず、当該処理ルーチンを開始する以前の処理(Challenge−Response portion of AKE、Protected RTT Protocol)を異常終了(abort)したか否かをチェックする(ステップS11)。
ここで、以前の処理を異常終了していた場合には(ステップS11のNo)、RA−Sourceは、要求元のRA−Sinkに対し、RA−AKE手続きを中断して(ステップS20)、本処理ルーチンを終了する。
また、以前の処理を正常に終了していた場合には(ステップS11のYes)、RA−Sourceは、RESPONSE2を受信したか否かをチェックする(ステップS12)。そして、RESPONSE2を受信したときには(ステップS12のYes)、RA−Sourceは、要求元のRA−SinkのIDをIDuとする(ステップS13)。また、RESPONSE2を受信していないときには(ステップS12のNo)、RA−Sourceは、要求元のRA−SinkのDevice IDをIDとする(ステップS14)。
次いで、RA−Sourceは、要求元のRA−SinkのIDを記憶部14内のRAレジストリーに既に登録済みか否かをチェックする(ステップS15)。
ここで、要求元のRA−SinkのIDをRAレジストリーに登録してあることを確認できないときには(ステップS15のNo)、RA−Sourceは、要求元のRA−Sinkに対し、RA−AKE手続きを中断して(ステップS20)、本処理ルーチンを終了する。
他方、要求元のRA−SinkのIDをRAレジストリーに登録済みであることを確認できたときには(ステップS15のYes)、RA−Sourceは、続いて、リモート・アクセス用の交換鍵の供給数KCが上限値未満であるかどうかをチェックする(ステップS16)。
そして、リモート・アクセス用の交換鍵の供給数KCが上限値未満であることを確認できたときには(ステップS16のYes)、RA−Sourceは、KCを1だけインクリメントして(ステップS17)、確認処理に「成功」した旨の結果コードを、リモート・アクセス用の交換鍵(RA_Kx)とそのID(RA_Kx_label)とともに、要求元のRA−Sinkに通知して(ステップS19)、本処理ルーチンを終了する。
また、鍵の供給数KCが上限値に到達しているときには(ステップS16のNo)、RA−Sourceは、「busy」である旨の結果コードを要求元のRA−Sinkに通知して(ステップS18)、本処理ルーチンを終了する。
RA−SourceとRA−Sinkの間でリモート・アクセス用の交換鍵が共有されると、リモート・アクセスによるコンテンツ伝送が可能な状態となる。図19には、RA−SinkがRA−Sourceに対してコンテンツを要求する際の動作シーケンスを示している。但し、同図では、RA−SinkからRA−Sourceに対してHTTPプロトコルに従ってコンテンツが要求され、ダウンロード形式でコンテンツが伝送されるものとする。
RA−Sinkは、図9に示したRA−AKE手続きによってリモート・アクセス用の交換鍵(RA_Kx)とそのID(RA_Kx_label)を取得した後、HTTP GETメソッドを用いたHTTPリクエスト(HTTP GET request)により、RA−Sourceにコンテンツ・データをリクエストする。このリクエストの際には、コンテンツのURLとともに、リモート・アクセス出力用の交換鍵のID(RA_Kx_label)を送る。ここで、RA−SinkからRA−Sourceに交換鍵のID(RA_Kx_label)を送るためのヘッダーフィールドを定義する。
RA−Sourceは、コンテンツ・データのリクエストを受けると、要求されたコンテンツがリモート・アクセス出力数をチェックするための「コンテンツのリモート・アクセス(RA)出力管理1」の処理を実行する。そして、リクエストで指定されたURLのコンテンツがリモート・アクセス出力可能であることが確認できたなら、RA−Sourceは、交換鍵IDで指定されたリモート・アクセス用の交換鍵を用いて暗号鍵を算出し、この暗号鍵を用いて暗号化したコンテンツをHTTPレスポンス(HTTP GET response)として返送する。
図20には、RA−Sourceが実施する、コンテンツのリモート・アクセス(RA)出力管理1の処理手順をフローチャートの形式で示している。
まず、RA−Sourceは、HTTPリクエストに含まれる交換鍵IDで示される交換鍵がDTCP−IP用か否かをチェックする(ステップS51)。
ここで、HTTPリクエストに含まれる交換鍵IDで示される交換鍵がDTCP−IP用でない場合には(ステップS51のNo)、RA−Sourceは、続いて、当該交換鍵がリモート・アクセス用か否かをチェックする(ステップS52)。
当該交換鍵がリモート・アクセス用である場合には(ステップS52のYes)、RA−Sourceは、HTTPリクエストに含まれるURLで指定されたコンテンツがリモート・アクセス可能か否かをチェックする(ステップS53)。コンテンツがリモート・アクセス可能か否かは、例えば、RA−flagを用いて管理することができる(後述)。
そして、HTTPリクエストに含まれる交換鍵IDで示される交換鍵がDTCP−IP用である場合(ステップS51のYes)、又は、HTTPリクエストで指定されたコンテンツがリモート・アクセス可能であることが分かった場合には(ステップS53のYes)、RA−Sourceは、RA−SinkからのHTTPリクエスト(HTTP GET request)への応答をOKとして(ステップS54)、本処理ルーチンを終了する。
他方、HTTPリクエストに含まれる交換鍵IDで示される交換鍵がリモート・アクセス用でない場合(ステップS52のNo)、又は、HTTPリクエストで指定されたコンテンツがリモート・アクセス不能の場合には(ステップS53のNo)、RA−Sourceは、RA−SinkからのHTTPリクエスト(HTTP GET request)への応答をエラーとして(ステップS55)、本処理ルーチンを終了する。
ここまでの説明では、通信システムが一対のRA−SourceとRA−Sinkだけで構成されることを想定していた。しかしながら、RA−SourceやRA−Sinkは、それぞれさらに別の機器とデイジーチェーン形式で接続され、コンテンツを伝送する可能性がある。著作権保護されたコンテンツの伝送範囲は、本来、家庭内に留めるべきであり、コンテンツの受信と再送信が何段にもわたり繰り返し行なわれることは好ましくない。このため、コンテンツの受信と再送信を技術的に阻止することが必要である。本実施形態では、登録時におけるRTT及びTTLの制限と、鍵の供給数制限をより厳密なものにするために、さらに幾つかのルールを設けている。
図11に示すシステム構成例では、RA−Source#0と接続するRA−Sink#1が、さらにRA−Source#1としての機能も備え、別の機器RA−Sink#2と接続している。このような場合、RA−Sink#1としてリモート・アクセスして受信したコンテンツを、RA−Source#1としてRA−Sink#2に再度リモート・アクセス出力することを禁止することによって、コンテンツ提供元であるRA−Source#0の管理が及ばない所でリモート・アクセスされるのを防止するように運用する。
また、図12に示すシステム構成例では、RA−Sink#1が、リモート・アクセスによりRA−Source#0に接続するとともに、Source#1としての機能も備えDTCP−IPにより別の機器Sink#2に接続され、さらに、Sink#2がRA−Source#2としての機能も備えて別の機器RA−Sink#3と接続している。RA−Sink#1は、リモート・アクセスにより受信したコンテンツを、DTCP−IPを通じて別の機器Sink#2にローカル伝送することができる。DTCP−IPによるローカル伝送は、著作権保護の仕組みに則ったものであり、問題はない。また、Sink#2が受信したコンテンツを、RA−Source#2としてRA−Sink#3に再度リモート・アクセス出力することを禁止することによって、コンテンツ提供元であるRA−Source#0の管理が及ばない所でリモート・アクセスされるのを防止するように運用する。
図11、図12を参照しながら説明したシステム運用は、要するに、機器はリモート・アクセス又はDTCP−IPでのローカル伝送によって受信したコンテンツのリモート・アクセス出力を禁止して、コンテンツ提供元の意図しないリモート・アクセスを防止することである。このような運用を実現する1つの方法として、コンテンツのリモート・アクセス出力並びにローカル伝送時に以下の(1)、(2)の規定を設けることが挙げられる。
(1)RA−Sourceは、コンテンツが「リモート・アクセス出力可能」という情報を伴わない限り、リモート・アクセス出力を行なわないようする。
(2)RA−Source、Sourceは、リモート・アクセス又はDTCP−IPによるローカル伝送時に、リモート・アクセス出力の可否を表す情報を送らない。
図13に示すシステム構成例では、Source#0とDTCP−IPにより接続するSink#1が、さらにRA−Source#1としての機能も備え、別の機器RA−Sink#2と接続している。Source#0は、DTCP−IPを通じてのみ、Sink#1にコンテンツをローカル伝送することができる。DTCP−IPによるローカル伝送は、著作権保護の仕組みに則ったものであり、問題はない。ここで、上記(1)、(2)の制限規定が課されると、Sink#1は、受信したコンテンツをRA−Source#1としてRA−Sink#3に再度リモート・アクセス出力することができなくなる。
このケースでは、コンテンツ提供元の管理が及ばない所でのリモート・アクセス出力を防止することができるが、「リモート・アクセス出力可能」の情報を伴ったコンテンツであっても、一度もリモート・アクセス出力されないことになる。これに対し、本発明者らは、RA−Source#1が、Sink#1としてDTCP−IPを通じてローカル伝送によりSource#0から受信したコンテンツを、Source#0に代わってさらに別の機器RA−Sink#2にリモート・アクセス出力する(すなわち、リモート・アクセス出力を代行する)という運用は禁止する必要はない、と思料する。リモート・アクセス出力を代行するという運用は、DEP−RA−AKEを行なって、Source#0が鍵をSink#1とだけ共有し、Sink#1がその鍵を使ってコンテンツを暗号化伝送し、RA−Source1からリモート・アクセス出力することで実現できる。
図14には、DEP−RA−AKEを行なってSource#0が鍵をSink#1とだけ共有する際の認証シーケンス例を示している。
この認証シーケンスは、Sink#1がSource#0に対して鍵供給要求コマンド「DEP_RA_INIT」を送信することによって開始する。AKE手続きのチャレンジ・レスポンス部分(Challenge−Response portion of AKE)では、まず、Sink#1から、Rx乱数とRx証明書を含んだRxチャレンジが送信される。これに対しSource#0からは、Tx乱数及びTx証明書を含んだTxチャレンジが返信される。以降、Source#0から、Rx乱数、Txメッセージ、Tx署名を含んだRxレスポンスが送信されるとともに、Sink#1からはTx乱数、Rxメッセージ、Rx署名を含んだTxレスポンスが送信される。なお、「DEP_RA_AKE」を送信する代わりに、Rxチャレンジとして送信する情報の中に、「DEP_RA_AKE」の送信に相当する情報、例えば「DEP_RA_AKE_flag」を含める方法も考えられる。
各チャレンジ・コマンドには、機器固有の識別情報であるDevice IDが含まれている。但し、同チャレンジ・レスポンス部分の中では、SinkからSourceへのレスポンスとして「RESPONSE2」が送られることがあるが、その場合は、機器固有の識別情報として、Device IDではなく、RESPONSE2に含まれるIDuを使うことになる(同上)。
AKE手続きはDTCP−IPを通じて実施されることから、TTLの制限が課される。また、また、RTT保護プロトコル(Protected RTT Protocol)がさらに続く。リモート・アクセス出力代行の手続きDEP−RA−AKEは、ローカル環境内だけで行なわれるべきであり、現行のDTCP−IPにおけるRTT−AKEと同様に、RTT及びTTLが課される。
そして、上記の認証手順に成功すると、Source#0は、「DEP_RA−Sink Confirmation」処理を実行する。この処理では、Source#0は、鍵をSink#1とだけ共有するとともに、他の機器とこのDEP−RA−AKEは実施できないようにする。そして、Source#0は、鍵をSink#1とだけ共有できることを確認できた場合に、リモート・アクセス出力代行用の交換鍵(D−RA_Kx)とそのID(D−RA_Kx_label)と結果コードを、コマンド「DEP−RA_EXCHANGE_KEY」でSink#1に渡す。
Source#0は、その後はAKEによって共有した鍵を破棄するまで、他の機器とこのDEP−RA−AKEは実施できないようにする。また、Sink#1側では、当該処理手順を通じて共有できたリモート・アクセス出力代行用の交換鍵を使って、「リモート・アクセス出力可能」の情報を伴ったままコンテンツを暗号化伝送する。そして、Sink#1は、RA−Source#1として、RA−Sink#2へ当該コンテンツをリモート・アクセス出力することができる。
図15には、SourceがSinkにコンテンツのリモート・アクセス出力の代行を認証する「DEP_RA−Sink Confirmation」処理の手順をフローチャートの形式で示している。
Sourceは、まず、当該処理ルーチンを開始する以前の処理(Challenge−Response portion of AKE、Protected RTT Protocol)を異常終了(abort)したか否かをチェックする(ステップS21)。
ここで、以前の処理を異常終了していた場合には(ステップS21のNo)、Sourceは、要求元のSinkに対し、DEP_RA−Sink手続きを中断して(ステップS30)、本処理ルーチンを終了する。
また、以前の処理を正常に終了していた場合には(ステップS21のYes)、Sourceは、RESPONSE2を受信したか否かをチェックする(ステップS22)。そして、RESPONSE2を受信したときには(ステップS22のYes)、Sourceは、要求元のSinkのIDをIDuとする(ステップS23)。また、RESPONSE2を受信していないときには(ステップS22のNo)、Sourceは、要求元のSinkのDevice IDをIDとする(ステップS24)。
次いで、Sourceは、自分のDEP_RAレジストリーが空か否かをチェックする(ステップS25)。DEP_RAレジストリーは、コンテンツのリモート・アクセス出力を許可する唯一の機器のIDを保持するために記憶部14内に用意されたレジストリーである。
ここで、DEP_RAレジストリーが空であることを確認できたときには(ステップS25のYes)、Sourceは、DEP_RAレジストリーに要求元のSinkのIDを代入する(ステップS26)。そして、Sourceは、リモート・アクセス出力代行用の交換鍵(D−RA_Kx)とそのID(D−RA_Kx_label)と結果コードを、コマンド「DEP−RA_EXCHANGE_KEY」でSink#1に渡して(ステップS29)、本処理ルーチンを終了する。
また、DEP_RAレジストリーが空でないときには(ステップS25のNo)、Sourceは、DEP_RAレジストリーに保持されているIDが要求元のSinkのIDと一致するかどうかをさらにチェックする(ステップS27)。
DEP_RAレジストリーに保持されているIDが要求元のSinkのIDと一致する場合、すなわち、要求元のSinkをコンテンツのリモート・アクセス出力を代行する機器として既に登録しているときには(ステップS27のYes)、Sourceは、リモート・アクセス出力代行用の交換鍵(D−RA_Kx)とそのID(D−RA_Kx_label)と結果コードを、コマンド「DEP−RA_EXCHANGE_KEY」でSink#1に渡して(ステップS29)、本処理ルーチンを終了する。
他方、DEP_RAレジストリーに保持されているIDが要求元のSinkのIDと一致しないときには(ステップS27のNo)、Sourceは、「busy」である旨の結果コードを要求元のSinkに通知して(ステップS28)、本処理ルーチンを終了する。
Sourceは、図15に示した処理手順を実行した後は、他の機器とこのDEP−RA−AKEを重複して実施することができない。また、Sourceは、DEP−RA−AKEで共有したリモート・アクセス代行用の交換鍵(D−RA_Kx)を破棄したときに、DEP_RAレジストリーを空にすることで、他の機器とこのDEP−RA−AKEを実施できるようになる。
リモート・アクセス代行用の交換鍵の(D_RA_Kx)の破棄については、例えば、Sinkがリモート・アクセス代行を終了する時に、当該交換鍵の破棄を求めるコマンド(DEP_RA_FINISH)を交換鍵のID(D_RA_Kx_label)とともに送るという運用形態が考えられる。この破棄要求コマンドDEP_RA_FINISHは、図14中の「DEP_RA_INIT」、「DEP_RA_EXCHANGE_KEY」とともに、DTCP−IPのAKE control commandに、リモート・アクセス用のコマンドとして追加するものとする。
図21には、(RA−Sourceの機能を備えた)SinkがSourceに対してリモート・アクセスを代行するコンテンツを要求する際の動作シーケンスを示している。但し、同図では、SinkからSourceに対してHTTPプロトコルに従ってコンテンツが要求され、ダウンロード形式でコンテンツが伝送されるものとする。
Sinkは、図14に示したDEP_RA−AKE手続きによってリモート・アクセス用の交換鍵(D_RA_Kx)とそのID(D_RA_Kx_label)を取得した後、HTTP GETメソッドを用いたHTTPリクエスト(HTTP GET request)により、Sourceに対してコンテンツ・データをリクエストする。このリクエストの際には、コンテンツのURLとともに、リモート・アクセス代行用の交換鍵のID(D_RA_Kx_label)を送る。ここで、SinkからSourceに交換鍵のID(D_RA_Kx_label)を送るためのヘッダーフィールドを定義する。
Sourceは、コンテンツのリモート・アクセス出力代行のリクエストを受けると、要求されたコンテンツがリモート・アクセス出力代行可能か否かをチェックするための「コンテンツのリモート・アクセス代行(DEP−RA)出力管理1」の処理を実行する。そして、リクエストで指定されたURLのコンテンツがリモート・アクセス出力代行可能であることが確認できたなら、Sourceは、交換鍵IDで指定されたリモート・アクセス代行用の交換鍵を用いて暗号鍵を算出し、この暗号鍵を用いて暗号化したコンテンツを、「リモート・アクセス出力可能」の情報を伴ったまま、HTTPレスポンス(HTTP GET response)として返送する。
図22には、リモート・アクセス出力代行を要求されたSourceが実施する、コンテンツのリモート・アクセス出力代行管理の処理手順をフローチャートの形式で示している。
まず、Sourceは、HTTPリクエストに含まれる交換鍵IDで示される交換鍵がDTCP−IP用か否かをチェックする(ステップS61)。
ここで、HTTPリクエストに含まれる交換鍵IDで示される交換鍵がDTCP−IP用でない場合には(ステップS61のNo)、RA−Sourceは、続いて、当該交換鍵がリモート・アクセス代行用か否かをチェックする(ステップS62)。
当該交換鍵がリモート・アクセス代行用である場合には(ステップS62のYes)、Sourceは、HTTPリクエストに含まれるURLで指定されたコンテンツがリモート・アクセス可能か否かをチェックする(ステップS63)。コンテンツがリモート・アクセス可能か否かは、例えば、RA−flagを用いて管理することができる(後述)。
そして、HTTPリクエストに含まれる交換鍵IDで示される交換鍵がDTCP−IP用である場合(ステップS61のYes)、又は、HTTPリクエストで指定されたコンテンツがリモート・アクセス可能であることが分かった場合には(ステップS63のYes)、Sourceは、SinkからのHTTPリクエスト(HTTP GET request)への応答をOKとする(ステップS64)。
他方、HTTPリクエストに含まれる交換鍵IDで示される交換鍵がリモート・アクセス代行用でない場合(ステップS62のNo)、又は、HTTPリクエストで指定されたコンテンツがリモート・アクセス不能の場合には(ステップS63のNo)、Sourceは、SinkからのHTTPリクエスト(HTTP GET request)への応答をエラーとする(ステップS55)。
なお、図13に示したシステム構成において、リモート・アクセス不可のコンテンツをSource#0からSink#1に伝送したい場合には、現行のDTCP−IPに従って行なうことが考えられるが、以下のようにすることで、リモート・アクセス代行用の交換鍵(D_RA_K)を用いた伝送でリモート・アクセス可能及び不可の双方のコンテンツを扱えるようにすることもできる。
Source#0は、DEP−RA−AKEで共有した交換鍵を使うコンテンツ伝送の際には、リモート・アクセスの可否情報(RA−flag)を伴うことで、RA−Source#1は、受信したコンテンツをリモート・アクセス出力できるかどうかを判別できるようにする。
なお、RA−flagは、コンテンツ・データとともに暗号化したり、RA−flagの値を暗号鍵の計算をする関数に入力にして、暗号鍵Kcの値に反映させたりする方法や(図23を参照のこと)、RA−flagを含む、平文で伝送する情報を、その情報と暗号鍵をハッシュ関数で処理して求めた署名データ(signature)とともに送ることで(図24を参照のこと)、改竄を防ぐことができる。
また、RA−flagをコンテンツ・データとともに暗号化する場合、その格納先としては、DTCP−IPで運用されているDTCP_descriptorやPCP−URのreservedとなっているビットや(図25、図26を参照のこと)、あるいは新たなコンテンツ関連情報のコンテナを設けてそこに配置することなどが考えられる。
なお、上記の説明では、図13に示したシステム構成において、Sink#1は、Source#0からのコンテンツを記録せずに、RA−Source#1経由でリモート・アクセス出力することを想定している。変形例として、コンテンツをSource#0からSink#1にMOVEする場合も、DP−RA−AKEで共有した鍵を使ったコンテンツの伝送時にリモート・アクセスの可否情報(RA−flag)を伴うことで、RA−Source#1は、受信したコンテンツをリモート・アクセス出力できるかどうかを判別することができる。ここで、DTCP−IPで言うMOVE機能は、Sinkは受信したコンテンツをNoMore Copiesとして符号化して記録すること、及び、Source側では伝送した後のコンテンツを消去又は利用不能にするという条件の下で、暗号化コンテンツをSourceからSinkへ伝送することを意味する。
ここまでは、RA−Sourceを利用できるRA−Sinkの台数を制限する方法について説明してきた。これに対し、コンテンツ・オーナーの中には、自分が提供するコンテンツを同時にリモート・アクセスを利用できる数を制限することで不正の脅威を小さくしたいと要望することも考えられる。例えば、記録禁止の有料番組を受信機が直ちにリモート・アクセス出力する場合などである。
コンテンツのリモート・アクセス利用数を制限する方法として、RA−AKEで共有する鍵をRA−Sink毎に変えるとともに、各RA−Sinkにどのコンテンツをリモート・アクセスしているかを管理する方法が挙げられる。そして、RA−Sourceは、所定の数以上のRA−Sinkに同じコンテンツを同時に伝送しないようにすればよい。
RA−Sourceは、コンテンツを同時にリモート・アクセスを利用できる数を制限するために、例えば以下に示すような管理テーブルを用いる。
Figure 0005754491
上記の管理テーブルでは、RA−Sinkに伝送中のコンテンツのURLとRA−Sinkと1対1に対応する交換鍵ID(RA_Kx_label)の組み合わせが各エントリーで管理されている。この管理テーブル中で、URLのみが一致し、交換鍵IDが相違するエントリーは、1つのコンテンツを異なるRA−Sinkが利用していることを表す。
RA−Sourceは、新たにコンテンツ伝送を開始する前に、この管理テーブルを参照して、同じコンテンツが所定の数を超えるRA−Sinkに送られないように制御する。コンテンツの伝送開始が許容されるときには、RA−Sourceは、URLと交換鍵IDの組み合わせからなるエントリーを管理テーブルに追加する。
図16には、同じコンテンツを同時に伝送するRA−Sinkの台数が制限される場合の、RA−SinkがRA−Sourceにコンテンツを要求する際の動作シーケンスを示している。
RA−Sinkは、図9に示したRA−AKE手続きによってリモート・アクセス用の交換鍵(RA_Kx)とそのID(RA_Kx_label)を取得した後、HTTP GETメソッドを用いたHTTPリクエスト(HTTP GET request)により、RA−Sourceにコンテンツ・データをリクエストする。このリクエストの際には、コンテンツのURLとともに、リモート・アクセス出力用の交換鍵のID(RA_Kx_label)を送る。ここで、RA−SinkからRA−Sourceに交換鍵のID(RA_Kx_label)を送るためのヘッダーフィールドを定義する。
RA−Sourceは、コンテンツ・データのリクエストを受けると、要求されたコンテンツを同時にリモート・アクセス出力するRA−Sinkの台数をチェックするための「同一コンテンツのリモート・アクセス(RA)出力管理2」の処理を実行する。そして、指定されたURLのコンテンツを同時に伝送するRA−Sinkの台数がまだ制限数に達していない場合は、RA−Sourceは、交換鍵IDで指定されたリモート・アクセス用の交換鍵を用いて暗号鍵を算出し、この暗号鍵を用いて暗号化したコンテンツをHTTPレスポンス(HTTP GET response)として返送する。また、RA−Sourceは、上記の管理テーブルにエントリーを追加する。
なお、RA−Sourceがリモート・アクセス用の鍵を破棄したときに、破棄した鍵に対応するエントリーを上記のテーブルから消去する。なお、RA−Sinkがリモート・アクセスを終了した時で、上記の管理テーブルからエントリーの削除を求めるコマンド(RA_FINISH)を、リモート・アクセス用の交換鍵のID(RA_Kx_label)とともに送るようにしてもよい(同上)。
図17には、図16に示した動作シーケンスにおいて、RA−Sourceがコンテンツ・データのリクエストに応じて実行する、同一コンテンツの出力数を管理するための処理手順をフローチャートの形式で示している。
まず、RA−Sourceは、HTTPリクエストに含まれる交換鍵IDで示される交換鍵がDTCP−IP用か否かをチェックする(ステップS31)。
ここで、HTTPリクエストに含まれる交換鍵IDで示される交換鍵がDTCP−IP用である場合には(ステップS31のYes)、RA−Sourceは、RA−SinkからのHTTPリクエスト(HTTP GET request)への応答をOKとして(ステップS38)、本処理ルーチンを終了する。
また、HTTPリクエストに含まれる交換鍵IDで示される交換鍵がDTCP−IP用でない場合には(ステップS31のNo)、RA−Sourceは、続いて、当該交換鍵がリモート・アクセス用か否かをチェックする(ステップS32)。
当該交換鍵がリモート・アクセス用である場合には(ステップS32のYes)、RA−Sourceは、HTTPリクエストに含まれるURLで指定されたコンテンツがリモート・アクセス可能か否かをチェックする(ステップS33)。コンテンツがリモート・アクセス可能か否かは、例えば、RA−flagを用いて管理することができる(後述)。
HTTPリクエストに含まれる交換鍵IDで示される交換鍵がリモート・アクセス用でない場合(ステップS32のNo)、又は、HTTPリクエストで指定されたコンテンツがリモート・アクセス不能の場合には(ステップS33のNo)、RA−Sourceは、RA−SinkからのHTTPリクエスト(HTTP GET request)への応答をエラーとして(ステップS39)、本処理ルーチンを終了する。
また、HTTPリクエストで指定されたコンテンツがリモート・アクセス可能であることが分かった場合には(ステップS33のYes)、RA−Sourceは、コンテンツ・データのリクエスト中に含まれるURLと交換鍵ID(RA_Kx_label)の組み合わせと同じエントリーが管理テーブル中にあるかどうかをチェックする(ステップS34)。
ここで、コンテンツ・データのリクエスト中に含まれるURLと交換鍵ID(RA_Kx_label)の組み合わせと同じエントリーが管理テーブル中にあるときには(ステップS34のYes)、当該コンテンツが要求元のRA−Sinkに利用されても利用数の制限を超えることはない。そこで、RA−Sourceは、要求元のRA−SinkからのGET requestに対する応答を「OK」として(ステップS38)、本処理ルーチンを終了する。
他方、コンテンツ・データのリクエスト中に含まれるURLと交換鍵ID(RA_Kx_label)の組み合わせと同じエントリーが管理テーブル中にないときには、RA−Sourceは、続いて、URLが同じエントリーが管理テーブル中にあるかどうかをチェックする(ステップS35)。
コンテンツ・データのリクエスト中に含まれるURLが同じであるエントリーが管理テーブル中にないときには(ステップS35のNo)、当該コンテンツが要求元のRA−Sinkに利用されても利用数の制限を超えることはない。そこで、RA−Sourceは、コンテンツ・データのリクエストで指定されたURLと交換鍵ID(RA_Kx_label)の組み合わせからなるエントリーを管理テーブルに追加する(ステップS37)。そして、RA−Sourceは、要求元のRA−SinkからのGET requestに対する応答を「OK」として(ステップS38)、本処理ルーチンを終了する。
また、コンテンツ・データのリクエスト中に含まれるURLと同じであるエントリーが管理テーブル中にあるときには(ステップS35のYes)、リクエストに応答して要求元のRA−Sinkにコンテンツを提供すると、利用数の制限を超えるおそれがある。そこで、RA−Sourceは、管理テーブル中で、コンテンツ・データのリクエスト中に含まれるURLと同じであるエントリーの数が上限値未満か否かをさらにチェックする(ステップS36)。
管理テーブル中で、コンテンツ・データのリクエスト中に含まれるURLと同じであるエントリーの数が上限値未満であれば(ステップS36のYes)、当該コンテンツが要求元のRA−Sinkに利用されても利用数の制限を超えることはない。そこで、RA−Sourceは、コンテンツ・データのリクエストで指定されたURLと交換鍵ID(RA_Kx_label)の組み合わせからなるエントリーを管理テーブルに追加し(ステップS37)、要求元のRA−SinkからのGET requestに対する応答を「OK」として(ステップS38)、本処理ルーチンを終了する。
管理テーブル中で、コンテンツ・データのリクエスト中に含まれるURLと同じであるエントリーの数が上限値に達していると(ステップS36のNo)、当該コンテンツが要求元のRA−Sinkに利用されても利用数の制限を超えてしまう。このため、RA−Sourceは、要求元のRA−SinkからのGET requestに対する応答を「ERROR」として(ステップS39)、本処理ルーチンを終了する。
ここまでの説明では、「リモート・アクセス出力可能」という情報を伴わないコンテンツはリモート・アクセスできないことが前提であった。しかしながら、現実には、記録可能なコンテンツであれば、DVDやメモリカードなどの可搬型の記録媒体(removable media)に書き込むことで、コンテンツを家庭の外に持ち出して、別の機器で利用することができる。よって、記録可能なコンテンツについては、「リモート・アクセス出力可能」という情報を伴わなくても、記録した後はリモート・アクセス可能とする運用も考えられる。
但し、RA−Sinkで受信したコンテンツの書き込み先が可搬型記録媒体の場合は、コンテンツを最後まで書き込んだ後に持ち出せるということで、リモート・アクセスについてもコンテンツの記録中や、記録開始時点から所定の時間が経過するまでリモート・アクセスの抑制が求められるかもしれない。
図18には、RA−Sourceとして動作する機器がコンテンツを記録又はMOVE機能で取り込むための処理手順をフローチャートの形式で示している。
RA−Sourceは、まず、取り込んだコンテンツが「リモート・アクセス出力可否」に関する情報を伴っているかどうかをチェックする(ステップS41)。
ここで、取り込むコンテンツが取り込んだコンテンツが「リモート・アクセス出力可否」に関する情報を伴っているときには(ステップS41のYes)、さらに、当該情報の指定内容が「リモート・アクセス出力可」となっているか否かをチェックする(ステップS42)。
ここで、「リモート・アクセス出力可否」に関する情報の指定内容が「リモート・アクセス出力可」となっていないときには(ステップS42のNo)、RA−Sourceは、その情報に従って、リモート・アクセス不可期限を「無限」に設定する(ステップS43)。
次いで、RA−Sourceは、取り込んだコンテンツのリモート・アクセス出力の可否を示すRA−flagを設定して(ステップS44)、本処理ルーチンを終了する。
一方、コンテンツが「リモート・アクセス出力可能」という情報を伴っていないときには(ステップS45のNo)、RA−Sourceは、基準となる時点の時刻に所定の期間を加えた結果の値Tを求め(ステップS46)、Tをそのコンテンツのリモート・アクセス不可期限とするとともに(ステップS47)、その期限まで当該コンテンツのリモート・アクセス出力を禁止する設定でRA−flagを「不可」に初期化して(ステップS48)、本処理ルーチンを終了する。
ここで、基準点時刻とは、例えば放送コンテンツであれば番組の先頭が放送されたタイミングの時刻で、それに加える所定の時間としては、番組情報としてコンテンツとともに送られる番組の時間長などが考えられる。記録メディア中のコンテンツなど、いつ記録されたものか不明なものについては、コンテンツをMOVE機能により取り込もうとした時点の時刻にコンテンツの再生長を加えた値をTとすることが考えられる。
なお、図18では省略しているが、コンテンツが「リモート・アクセス出力不可」という情報を伴うときには(ステップS42で分かったときには)、RA−Sourceは、RA−flagを不可とするとともに、Tを「無限」に設定する。
図18に示した処理手順を経て、RA−flagが「不可」と設定されたコンテンツで、Tが「無限」に設定でないものは、指定されたタイミング以降は、リモート・アクセス可能なものとして扱うことができる。
図27には、RA−Sourceが、コンテンツに設定されたRA−flag及びTを更新するための処理手順をフローチャートの形式で示している。
RA−Sourceは、まず、コンテンツのRA−flagが「可」に設定されているか否かをチェックする(ステップS71)。ここで、コンテンツのRA−flagが既に「可」に設定されているときには(ステップS71のYes)、後続の処理をすべてスキップして、本処理ルーチンを終了する。
コンテンツのRA−flagが「可」に設定されていないときには(ステップS71のNo)、RA−Sourceは、次いで、コンテンツのリモート・アクセス不可期限が「無限」に設定されているか否かをチェックする(ステップS72)。ここで、コンテンツのリモート・アクセス不可期限が「無限」に設定されているときには(ステップS72のYes)、後続の処理をすべてスキップして、本処理ルーチンを終了する。
コンテンツのリモート・アクセス不可期限が「無限」に設定されていないときには(ステップS72のNo)、RA−Sourceは、次いで、コンテンツのリモート・アクセス不可期限が現時点より未来か否かをチェックする(ステップS73)。
コンテンツのリモート・アクセス不可期限が現時点より未来であれば(ステップS73のYes)、そのまま本処理ルーチンを終了する。また、コンテンツのリモート・アクセス不可期限が現時点より未来でない、すなわちリモート・アクセス不可期限に既に到達しているときには(ステップS73のNo)、RA−Sourceは、コンテンツのRA−flagを「可」に更新して(ステップS74)、本処理ルーチンを終了する。
RA−Sourceが図27に示した処理手順を定期的に実行することで、コンテンツのRA−flagを「可」に更新することができる。当該処理手順の具体的な実施タイミングとして、例えばコンテンツ・リスト(図示しない)を外部に提示するときなどが挙げられる。
DTCP−IPではコンテンツは家庭内ネットワークでの利用だけが可能であった。これに対し、本実施形態に係る通信システムでは、不正利用の可能性を絞り込むことで、家庭の外から、すなわちリモート・アクセスによるコンテンツの利用が可能となる。
また、本実施形態に係る通信システムでは、RTT、TTL、コンテンツを利用するRA−Sinkの台数、交換鍵の供給数など、リモート・アクセスを制限する複数の制限値を調整することで、システムを柔軟に構築することができる。
また、本実施形態に係る通信システムによれば、DTCP−IPの通信プロトコルをベースにして構築しつつ、RTTやTTLの制限を外して、リモート・アクセスによるコンテンツの利用を実現することができる。
本発明に係る通信システムに置いて、RA−Sourceに相当するコンテンツ提供装置の機能的構成については、図3を参照しながら既に説明した。例えば、パーソナル・コンピューターや、レコーダー、その他のさまざまな情報機器がコンテンツ提供装置として機能することができる。
図29には、コンテンツ提供装置に適用されるパーソナル・コンピューター80の構成例を示している。図示のパーソナル・コンピューター80は、CPU81、RAM(Random Access Memory)82、EEPROM(Electrically Erasable and Programmable ROM)83、ディスプレイ84、スピーカー85、例えばHDD(Hard Disc Drive)やSDD(Super Density Disc)などの大容量情報記憶装置86、I/Oインターフェース87などの回路コンポーネントを備え、これらの回路コンポーネントがバス88を介して相互接続されている。
CPU81は、メインメモリーとしてのRAM82にロードされたプログラムを読み出して実行する。
RAM82には、コンテンツの暗号及び復号に関する機能がロードされる。例えば、DTCP−IP機能を実行するためのプログラム、及び、RA−AKE処理を実行するためのプログラムがRAM82にロードされる。また、RA−SourceにRA−Sinkを登録する際の認証シーケンス(図7を参照のこと)を実行するためのプログラムは、RA−AKE処理を実行するためのプログラムの一部として、このRAM82にロードされ、CPU81が実行する。
EEPROM83は、書き換えが可能な不揮発性記憶装置であり、設定情報などが記憶される。パーソナル・コンピューター80がRA−Sourceすなわちコンテンツ提供装置として動作する場合、RA−sinkとなる端末IDがEEPROM83に記憶される。
パーソナル・コンピューター80上では、RA−sink(例えば、モバイル端末)から、このRA−sinkをRA-AKE手続きが可能な端末として登録するよう要求を受けると、CPU81が、RAM82からDTCP−IPのAKE処理が記述されたプログラムを読み出し、RA−sinkとの間でAKE手続きを実行する。
この手続きに成功すると、CPU81は、RAM82に記憶されたプログラムに従って、RA−sinkの端末IDを、EEPROM83に記憶する。
その後、パーソナル・コンピューター80上では、CPU81が、RA−AKE処理の要求を受けた場合に、この要求を行なっている端末のIDと、EEPROM83に記憶されたRA−sinkの端末IDとを比較し、RA−AKE処理を完了させるか否かを決定する処理を実行する。
そして、RA−AKE処理が完了すると、パーソナル・コンピューター80と、RA−AKE処理の要求を行なった端末との間で共通するコンテンツ鍵が生成される。パーソナル・コンピューター80側では、生成されたコンテンツ鍵を一時的に記憶し、大容量情報記憶装置86からコンテンツを読み出したときに、このコンテンツを一時的に記憶されたコンテンツ鍵で暗号化する。暗号化されたコンテンツは、I/Oインターフェース88を経て、外部に出力される。I/Oインターフェース88が無線LAN機能を有している場合、無線LANを介して、RA−AKE処理の要求を行なった端末に対し、暗号化コンテンツが送信される。
また、図30には、コンテンツ提供装置に適用されるレコーダー90の構成例を示している。図示のレコーダー90は、システム・チップ91、大容量記憶装置92、RAM93、EEPROM94、無線LANチップ95を備えている。
システム・チップ91は、CPU91a、コプロセッサー91b、インターフェース機能部91cなどの回路モジュールを備え、これらの回路モジュールは、当該チップ内のバス91dで相互接続されている。
CPU91aは、インターフェース機能部91cを介して接続された記憶装置に記憶されたプログラムを実行することが可能である。
コプロセッサー91bは、補助演算装置であり、主に動画像の圧縮又は復号処理を実行する。例えば、H264、VC1、MPEG2、JPEGなどのアルゴリズムを実行する。
大容量記憶装置92は、例えばHDDやSDDなどであるが、コンテンツ利用装置に提供するコンテンツを記憶する。
メインメモリーとしてのRAM93には、CPU91aで実行されるプログラムがロードされる。RAM93にロードされる主なプログラムは、コンテンツの暗号及び復号に関する機能を実現するプログラムであり、例えば、DTCP−IP機能を実行するためのプログラム、及び、RA−AKE処理を実行するためのプログラムがRAM82にロードされる。
EEPROM94は、書き換えが可能な不揮発性記憶装置であり、設定情報などが記憶される。レコーダー90がRA−Sourceすなわちコンテンツ提供装置として動作する場合、RA−sinkとなる端末IDがEEPROM94に記憶される。
レコーダー90上では、RA−sink(例えば、モバイル端末)から、このRA−sinkをRA-AKE手続きが可能な端末として登録するよう要求を受けると、CPU91aが、RAM93からDTCP−IPのAKE処理が記述されたプログラムを読み出し、RA−sinkとの間でAKE手続きを実行する。
この手続きに成功すると、CPU91aは、RAM93に記憶されたプログラムに従って、RA−sinkの端末IDを、EEPROM94に記憶する。
その後、レコーダー90上では、CPU91aが、RA−AKE処理の要求を受けた場合に、この要求を行なっている端末のIDと、EEPROM94に記憶されたRA−sinkの端末IDとを比較し、RA−AKE処理を完了させるか否かを決定する処理を実行する。
そして、RA−AKE処理が完了すると、レコーダー90と、RA−AKE処理の要求を行なった端末との間で共通するコンテンツ鍵が生成される。レコーダー90側では、生成されたコンテンツ鍵を一時的に記憶し、大容量情報記憶装置92からコンテンツを読み出したときに、このコンテンツを一時的に記憶されたコンテンツ鍵で暗号化する。暗号化されたコンテンツは、インターフェース機能部91c及び無線LANチップ95を経て、RA−AKE処理の要求を行なった端末に対し、暗号化コンテンツが送信される。
以上、特定の実施形態を参照しながら、本発明について詳細に説明してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
本発明の適用例として、DTCP−IPが適用されるホームネットワーク上のサーバーに、家庭外のクライアントからリモート・アクセスしてコンテンツを利用する通信システムを挙げることができるが、本発明の要旨はこれに限定されない。著作権やその他の目的で保護が必要となるコンテンツを、往復遅延時間(RTT)やIPルーターのホップ回数(TTL)などの制限を超えつつ、WANなどの外部ネットワークを経由したリモート・アクセスを通じてコンテンツを伝送する他のあらゆるコンテンツ伝送システムに、同様に本発明を適用することができる。
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
10…コンテンツ提供装置(RA−source)
11…CPU
12…コンテンツ受信/再生部
13…通信部
14…記憶部
15…タイマー
20…コンテンツ利用装置(RA−sink)
21…CPU
22…通信部
23…コンテンツ出力部
24…記憶部
30、31…ルーター
40、41…モデム
50…WAN
60…IASサービス
70…DDNSサービス
80…パーソナル・コンピューター
81…CPU
82…RAM
83…EEPROM
84…ディスプレイ
85…スピーカー
86…大容量情報記憶装置
87…I/Oインターフェース
88…バス
90…レコーダー
91…システム・チップ
91a…CPU、91b…コプロセッサー
91c…インターフェース機能部、91d…バス
92…大容量記憶装置
92…RAM
94…EEPROM
95…無線LANチップ

Claims (30)

  1. コンテンツを提供するコンテンツ提供装置とコンテンツを利用する1以上のコンテンツ利用装置でコンテンツ伝送のための通信を行なう通信システムであって、
    コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て、コンテンツを要求するコンテンツ利用装置を前記コンテンツ提供装置に登録する登録手段と、
    コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、前記コンテンツ提供装置から前記登録手段により登録された前記コンテンツ利用装置へ、要求されたコンテンツを伝送する伝送手段と、
    を具備し、
    前記登録手段は、前記コンテンツ提供装置に登録できるコンテンツ利用装置の台数を制限し(但し、2台以上を登録できるものとする)
    前記伝送手段は、前記登録手段により前記コンテンツ提供装置に登録された正当なコンテンツ利用装置のうち、コマンドの往復遅延時間に関する制限を課さない前記第2の相互認証手続きを通じてコンテンツ伝送するための交換鍵を供給できる台数の上限を前記登録手段が前記コンテンツ提供装置に登録できる台数より少なく設定する、
    通信システム。
  2. コンテンツを要求するコンテンツ利用装置を、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録する登録手段と、
    コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、前記登録手段により登録された前記コンテンツ利用装置へ、要求されたコンテンツを伝送する伝送手段と、
    を具備し、
    前記登録手段は、登録できるコンテンツ利用装置の台数を制限し(但し、2台以上を登録できるものとする)
    前記伝送手段は、前記登録手段に登録された正当なコンテンツ利用装置のうち、コマンドの往復遅延時間に関する制限を課さない前記第2の相互認証手続きを通じてコンテンツ伝送するための交換鍵を供給できる台数の上限を前記登録手段が登録できる台数より少なく設定する、
    通信装置。
  3. 前記登録手段は、前記第1の相互認証手続きに際し、IP(Internet Protocol)ルーターのホップ回数に関する制限をさらに課し、
    前記伝送手段は、前記第2の相互認証手続きに際し、IPルーターのホップ回数に関する制限をも課さない、
    請求項2に記載の通信装置。
  4. 前記伝送手段は、
    前記第2の相互認証手続きを通じて前記コンテンツ利用装置の間で共有される交換鍵から生成される暗号鍵を用いてコンテンツを暗号化伝送し、
    前記コンテンツ利用装置がアクセス終了時に発行する破棄要求に応じて、該当する交換鍵を破棄し、前記伝送台数の上限のカウントを破棄した交換鍵の数に応じて減じる、
    請求項5に記載の通信装置。
  5. 前記第2の相互認証手続きを経たコンテンツ伝送が可能であるコンテンツには所定の伝送可能情報が付加されており、
    前記伝送手段は、前記伝送可能情報が付加されていないコンテンツの伝送を禁止し、前記伝送可能情報が付加されているコンテンツについては前記伝送可能情報を伴わずに伝送する、
    請求項2に記載の通信装置。
  6. コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て、前記伝送可能情報が付加されたままコンテンツを伝送する第2の伝送手段をさらに備える、
    請求項5に記載の通信装置。
  7. 前記第2の伝送手段は、
    前記第1の相互認証手続きを通じて1台のコンテンツ利用装置のみの間で共有される代行用の交換鍵から生成される暗号鍵を用いて前記伝送可能情報が付加されたままコンテンツを暗号化伝送し、
    前記1台のコンテンツ利用装置が代行終了時に発行する破棄要求に応じて、前記代行用の交換鍵を破棄する、
    請求項6に記載の通信装置。
  8. 前記伝送手段は、同じコンテンツを所定の同時伝送台数以上のコンテンツ利用装置に同時に伝送しないようにする、
    請求項2に記載の通信装置。
  9. 前記伝送手段は、前記第2の相互認証手続きを通じて伝送するコンテンツを暗号化する暗号鍵の生成に用いる交換の鍵を、コンテンツの伝送先となるコンテンツ利用装置毎に変えるとともに、暗号化伝送するコンテンツをコンテンツ利用装置毎に管理して、同じコンテンツを所定の同時伝送台数以上のコンテンツ利用装置に同時に伝送しないようにする、
    請求項2に記載の通信装置。
  10. 提供するコンテンツを記録する記憶部を備え、
    前記伝送手段は、前記記憶部に記録してから所定時間が経過した後のコンテンツの伝送を許容する、
    請求項2に記載の通信装置。
  11. コンテンツを要求するコンテンツ利用装置を、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録する登録ステップと、
    コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、前記登録手段により登録された前記コンテンツ利用装置へ、要求されたコンテンツを伝送する伝送ステップと、
    を有し、
    前記登録ステップでは、登録できるコンテンツ利用装置の台数を制限し(但し、2台以上を登録できるものとする)
    前記伝送ステップでは、前記登録ステップにおいて登録された正当なコンテンツ利用装置のうち、コマンドの往復遅延時間に関する制限を課さない前記第2の相互認証手続きを通じてコンテンツ伝送するための交換鍵を供給できる台数の上限を前記登録ステップで登録できる台数より少なく設定する、
    通信方法。
  12. コンテンツ要求先となるコンテンツ提供装置に対し、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録手続きを行なう登録手続手段と、
    コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、登録した後の前記コンテンツ提供装置に対し、コンテンツを要求するコンテンツ要求手段と、
    を具備し、
    前記登録手続手段は、所定の登録台数制限下で前記コンテンツ提供装置への登録が許可され(但し、2台以上の登録が許可されるものとする)
    前記コンテンツ要求手段は、前記登録手続手段が登録を許可される台数の上限より少なく設定された台数の制限下で、前記コンテンツ提供装置からコマンドの往復遅延時間に関する制限を課さない前記第2の相互認証手続きを通じてコンテンツ伝送するための交換鍵が供給される、
    通信装置。
  13. 前記登録手続手段による登録手続きでは、前記第1の相互認証手続きに際し、IPルーターのホップ回数に関する制限がさらに課され、
    前記コンテンツ要求手段によるコンテンツ要求時では前記第2の相互認証手続きに際し、IPルーターのホップ回数に関する制限をも課されない、
    請求項12に記載の通信装置。
  14. 前記コンテンツ要求手段は、
    前記第2の相互認証手続きを通じて前記コンテンツ提供装置との間で共有される交換鍵から生成される暗号鍵を用いて暗号化されたコンテンツを受信し、
    前記コンテンツ提供装置へのアクセス終了時に前記交換鍵の破棄要求を発行する、
    請求項12に記載の通信装置。
  15. 前記第2の相互認証手続きを経たコンテンツ伝送が可能であるコンテンツには所定の伝送可能情報が付加されており、
    コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て、前記伝送可能情報が付加されたままのコンテンツを要求する第2のコンテンツ要求手段をさらに備える、
    請求項12に記載の通信装置。
  16. 前記第2のコンテンツ要求手段は、
    前記第1の相互認証手続きを通じて前記コンテンツ提供装置との間で共有される代行用の交換鍵から生成される暗号鍵を用いて暗号化された、前記伝送可能情報が付加されたコンテンツを受信して、前記コンテンツ提供装置を代行し、
    前記コンテンツ提供装置の代行を終了するときに前記代行用の交換鍵の破棄要求を発行する、
    請求項15に記載の通信装置。
  17. コンテンツ要求先となるコンテンツ提供装置に対し、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録手続きを行なう登録手続ステップと、
    コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、登録した後の前記コンテンツ提供装置に対し、コンテンツを要求するコンテンツ要求ステップと、
    を有し、
    前記登録手続ステップでは、所定の登録台数を制限下で前記コンテンツ提供装置への登録が許可され(但し、2台以上の登録が許可されるものとする)
    前記コンテンツ要求ステップでは、前記登録手続ステップで登録を許可される台数の上限より少なく設定された伝送台数の制限下で、前記コンテンツ提供装置からコマンドの往復遅延時間に関する制限を課さない前記第2の相互認証手続きを通じてコンテンツ伝送するための交換鍵が供給される、
    通信方法。
  18. ネットワーク経由でコンテンツを提供するための処理をコンピューター上で実行するようにコンピューター可読形式で記述されたコンピューター・プログラムであって、前記コンピューターを、
    コンテンツを要求するコンテンツ利用装置を、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録する登録手段、
    コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、前記登録手段により登録された前記コンテンツ利用装置へ、要求されたコンテンツを伝送する伝送手段、
    として機能させ、
    前記登録手段は、登録できるコンテンツ利用装置の台数を制限し(但し、2台以上を登録できるものとする)
    前記伝送手段は、前記登録手段に登録された正当なコンテンツ利用装置のうち、コマンドの往復遅延時間に関する制限を課さない前記第2の相互認証手続きを通じてコンテンツ伝送するための交換鍵を供給できる台数の上限を前記登録手段が登録できる台数より少なく設定する、
    コンピューター・プログラム。
  19. ネットワーク経由でコンテンツを要求するための処理をコンピューター上で実行するようにコンピューター可読形式で記述されたコンピューター・プログラムであって、前記コンピューターを、
    コンテンツ要求先となるコンテンツ提供装置に対し、コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て登録手続きを行なう登録手続手段と、
    コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを経て、登録した後の前記コンテンツ提供装置に対し、コンテンツを要求するコンテンツ要求手段と、
    として機能させ、
    前記登録手続手段は、所定の登録台数制限下で前記コンテンツ提供装置への登録が許可され(但し、2台以上の登録が許可されるものとする)
    前記コンテンツ要求手段は、前記登録手続手段が登録を許可される台数の上限より少なく設定された台数の制限下で、前記コンテンツ提供装置からコマンドの往復遅延時間に関する制限を課さない前記第2の相互認証手続きを通じてコンテンツ伝送するための交換鍵が供給される、
    コンピューター・プログラム。
  20. コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを記述した第1のプログラム、及び、コマンドの往復遅延時間に関する制限を課さない第2の相互認証手続きを記述した第2のプログラムを記憶するプログラム記憶部と、
    前記プログラム記憶部から読み出したプログラムを実行するプログラム実行部と、
    前記プログラム実行部が前記第1のプログラムを実行したことを経て、コンテンツ利用装置の登録台数の制限下で、コンテンツを要求するコンテンツ利用装置を示すコンテンツ利用装置識別情報を記憶するコンテンツ利用装置記憶部と(但し、2台以上を登録できるものとする)
    前記プログラム実行部が前記第2のプログラムを実行したことを経て、前記登録台数の上限より少なく設定した伝送台数の上限以内で、前記コンテンツ利用装置記憶部にコンテンツ利用装置識別情報が記憶されたコンテンツ利用装置に、コマンドの往復遅延時間に関する制限を課さない前記第2の相互認証手続きを通じてコンテンツ伝送するための交換鍵を供給する送信部と、
    を具備する通信装置。
  21. 動画像を圧縮又は復号する動画像処理用補助演算装置をさらに備える、
    請求項20に記載の通信装置。
  22. 動画像処理用補助演算装置は、MPEG2、H264、又は、VC1アルゴリズムを備える、
    請求項21に記載の通信装置。
  23. 前記第1のプログラムで記述される第1の相互認証手続きは、IPルーターのホップ回数に関する制限をさらに課し、
    前記第2のプログラムで記述される第2の相互認証手続きは、IPルーターのホップ回数に関する制限をも課さない、
    請求項20に記載の通信装置。
  24. 前記送信部は、
    前記第2の相互認証手続きを通じて前記コンテンツ利用装置の間で共有される交換鍵から生成される暗号鍵を用いてコンテンツを暗号化伝送し、
    前記コンテンツ利用装置がアクセス終了時に発行する破棄要求に応じて、該当する交換鍵を破棄し、前記伝送台数の上限のカウントを破棄した交換鍵の数に応じて減じる、
    請求項20に記載の通信装置。
  25. 前記第2の相互認証手続きを経たコンテンツ伝送が可能であるコンテンツには所定の伝送可能情報が付加されており、
    前記送信部は、前記伝送可能情報が付加されていないコンテンツの伝送を禁止し、前記伝送可能情報が付加されているコンテンツについては前記伝送可能情報を伴わずに伝送する、
    請求項20に記載の通信装置。
  26. コマンドの往復遅延時間に関する制限を課した第1の相互認証手続きを経て、前記伝送可能情報が付加されたままコンテンツを伝送する第2の送信部をさらに備える、
    請求項25に記載の通信装置。
  27. 前記第2の送信部は、
    前記第1の相互認証手続きを通じて1台のコンテンツ利用装置のみの間で共有される代行用の交換鍵から生成される暗号鍵を用いて前記伝送可能情報が付加されたままコンテンツを暗号化伝送し、
    前記1台のコンテンツ利用装置が代行終了時に発行する破棄要求に応じて、前記代行用の交換鍵を破棄する、
    請求項26に記載の通信装置。
  28. 前記送信部は、同じコンテンツを所定の同時伝送台数以上のコンテンツ利用装置に同時に伝送しないようにする、
    請求項20に記載の通信装置。
  29. 前記送信部は、前記第2の相互認証手続きを通じて伝送するコンテンツを暗号化する暗号鍵の生成に用いる交換の鍵を、コンテンツの伝送先となるコンテンツ利用装置毎に変えるとともに、暗号化伝送するコンテンツをコンテンツ利用装置毎に管理して、同じコンテンツを所定の同時伝送台数以上のコンテンツ利用装置に同時に伝送しないようにする、
    請求項20に記載の通信装置。
  30. 提供するコンテンツを記録するコンテンツ記憶部を備え、
    前記送信部は、前記コンテンツ記憶部に記録してから所定時間が経過した後のコンテンツの伝送を許容する、
    ことを特徴とする請求項20に記載の通信装置。
JP2013222966A 2009-09-09 2013-10-28 通信システム、通信装置及び通信方法、並びにコンピューター・プログラム Active JP5754491B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013222966A JP5754491B2 (ja) 2009-09-09 2013-10-28 通信システム、通信装置及び通信方法、並びにコンピューター・プログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009208687 2009-09-09
JP2009208687 2009-09-09
JP2013222966A JP5754491B2 (ja) 2009-09-09 2013-10-28 通信システム、通信装置及び通信方法、並びにコンピューター・プログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010117832A Division JP2011082952A (ja) 2009-09-09 2010-05-21 通信システム、通信装置及び通信方法、並びにコンピューター・プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015048794A Division JP2015136158A (ja) 2009-09-09 2015-03-11 通信システム

Publications (2)

Publication Number Publication Date
JP2014068349A JP2014068349A (ja) 2014-04-17
JP5754491B2 true JP5754491B2 (ja) 2015-07-29

Family

ID=50744299

Family Applications (6)

Application Number Title Priority Date Filing Date
JP2013222966A Active JP5754491B2 (ja) 2009-09-09 2013-10-28 通信システム、通信装置及び通信方法、並びにコンピューター・プログラム
JP2015048794A Pending JP2015136158A (ja) 2009-09-09 2015-03-11 通信システム
JP2016072185A Active JP6217779B2 (ja) 2009-09-09 2016-03-31 通信装置及び通信方法
JP2017020043A Expired - Fee Related JP6338718B2 (ja) 2009-09-09 2017-02-07 コンテンツ提供システム及びコンテンツ提供方法
JP2017020070A Active JP6338720B2 (ja) 2009-09-09 2017-02-07 コンテンツ提供装置及びコンテンツ提供方法
JP2017171268A Expired - Fee Related JP6443516B2 (ja) 2009-09-09 2017-09-06 通信システム及び通信方法

Family Applications After (5)

Application Number Title Priority Date Filing Date
JP2015048794A Pending JP2015136158A (ja) 2009-09-09 2015-03-11 通信システム
JP2016072185A Active JP6217779B2 (ja) 2009-09-09 2016-03-31 通信装置及び通信方法
JP2017020043A Expired - Fee Related JP6338718B2 (ja) 2009-09-09 2017-02-07 コンテンツ提供システム及びコンテンツ提供方法
JP2017020070A Active JP6338720B2 (ja) 2009-09-09 2017-02-07 コンテンツ提供装置及びコンテンツ提供方法
JP2017171268A Expired - Fee Related JP6443516B2 (ja) 2009-09-09 2017-09-06 通信システム及び通信方法

Country Status (1)

Country Link
JP (6) JP5754491B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106876885A (zh) 2015-12-10 2017-06-20 上海贝尔股份有限公司 一种低频振子及一种多频多端口天线装置

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5877359A (ja) * 1981-11-02 1983-05-10 Hasegawa Komuten Co Ltd 留守中自動連絡システム
JPH03123239A (ja) * 1989-10-06 1991-05-27 Nec Corp 電子掲示板の登録方式
JP4069339B2 (ja) * 1998-10-16 2008-04-02 ソニー株式会社 信号変換装置および信号変換方法
JP3977549B2 (ja) * 1999-04-30 2007-09-19 株式会社東芝 コンテンツ管理方法、コンテンツ利用管理システム、コンテンツ利用管理装置及び再生装置
JP3846301B2 (ja) * 2001-12-18 2006-11-15 日本電気株式会社 コンテンツ配信システム、その配信方法及びそのプログラム
JP2003224556A (ja) * 2002-01-28 2003-08-08 Toshiba Corp 通信装置及び通信制御方法
JP4205389B2 (ja) * 2002-09-06 2009-01-07 勝治 庄司 セルフロック機能を有する減速装置
JP3826100B2 (ja) * 2002-11-27 2006-09-27 株式会社東芝 通信中継装置、通信システム及び通信制御プログラム
US7558265B2 (en) * 2003-01-31 2009-07-07 Intel Corporation Methods and apparatus to limit transmission of data to a localized area
JP3808839B2 (ja) * 2003-03-17 2006-08-16 株式会社東芝 コンテンツ送信装置、コンテンツ受信装置、コンテンツ送信方法及びコンテンツ受信方法
JP4881538B2 (ja) * 2003-06-10 2012-02-22 株式会社日立製作所 コンテンツ送信装置およびコンテンツ送信方法
JP4608886B2 (ja) * 2004-01-16 2011-01-12 株式会社日立製作所 コンテンツ送信装置および方法
JP4645049B2 (ja) * 2004-03-19 2011-03-09 株式会社日立製作所 コンテンツ送信装置およびコンテンツ送信方法
JP4734872B2 (ja) * 2004-09-07 2011-07-27 パナソニック株式会社 コンテンツ配信管理装置及びコンテンツ配信管理方法
JP4305959B2 (ja) * 2004-09-16 2009-07-29 マツダ株式会社 車載品盗難警報装置
US7340769B2 (en) * 2005-01-07 2008-03-04 Cisco Technology, Inc. System and method for localizing data and devices
US7500269B2 (en) * 2005-01-07 2009-03-03 Cisco Technology, Inc. Remote access to local content using transcryption of digital rights management schemes
JP2007164299A (ja) * 2005-12-09 2007-06-28 Matsushita Electric Works Ltd 遠隔監視システム
CN101432774B (zh) * 2006-04-25 2012-05-30 汤姆森特许公司 数字加水印方法
JP2008033455A (ja) * 2006-07-26 2008-02-14 Matsushita Electric Ind Co Ltd コンテンツ秘匿システム、端末、コンテンツ秘匿方法
JP5156636B2 (ja) * 2006-10-06 2013-03-06 パナソニック株式会社 データ送信装置、データ受信装置及びデータ送受信システム
KR101145848B1 (ko) * 2006-11-29 2012-05-17 삼성전자주식회사 콘텐츠 전송을 위한 접근 제어 방법 및 상기 접근 제어방법을 이용하는 네트워크의 노드
JP2008054348A (ja) * 2007-10-23 2008-03-06 Toshiba Corp 情報処理装置
JP5439044B2 (ja) * 2009-06-09 2014-03-12 日立コンシューマエレクトロニクス株式会社 コンテンツ送信装置及びコンテンツ受信装置
JP5614016B2 (ja) * 2009-09-09 2014-10-29 ソニー株式会社 通信システム、通信装置及び通信方法、コンピューター・プログラム、並びに、コンテンツ提供装置及びコンテンツ提供方法

Also Published As

Publication number Publication date
JP6443516B2 (ja) 2018-12-26
JP2015136158A (ja) 2015-07-27
JP2017130935A (ja) 2017-07-27
JP6338718B2 (ja) 2018-06-06
JP2014068349A (ja) 2014-04-17
JP2017130936A (ja) 2017-07-27
JP6338720B2 (ja) 2018-06-06
JP6217779B2 (ja) 2017-10-25
JP2018038041A (ja) 2018-03-08
JP2016178642A (ja) 2016-10-06

Similar Documents

Publication Publication Date Title
JP2011082952A (ja) 通信システム、通信装置及び通信方法、並びにコンピューター・プログラム
JP5614016B2 (ja) 通信システム、通信装置及び通信方法、コンピューター・プログラム、並びに、コンテンツ提供装置及びコンテンツ提供方法
JP3769580B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
JP5899687B2 (ja) 通信装置及び通信方法、通信システム、並びにコンピューター・プログラム
JP2007199890A (ja) コンテンツ伝送システム、コンテンツ伝送装置及びコンテンツ伝送方法、並びにコンピュータ・プログラム
JP4910324B2 (ja) 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム
JP5652036B2 (ja) 通信システム、通信装置及び通信方法、並びにコンピューター・プログラム
JP6443516B2 (ja) 通信システム及び通信方法
US7688860B2 (en) Data transmission apparatus, data reception apparatus, data transmission method, and data reception method
US20170238181A1 (en) Mobile terminal to request an authentication to receive an exchanging key for remotely accessing content
JP6614279B2 (ja) リモート・アクセス・コンテンツ提供方法
JP6269798B2 (ja) リモート・アクセス・コンテンツ提供システム
JP6270672B2 (ja) コンテンツ提供装置及びコンテンツ提供方法
JP6257497B2 (ja) コンテンツ伝送装置並びにシンク機器
JP6065881B2 (ja) 通信装置
JP2017103774A (ja) 通信装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131028

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140826

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140929

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150311

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20150403

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150428

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150511

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250